У меня есть проект Laravel с этим кодом:Почему __isset() не срабатывает в модели Laravel?
$names = isset($user->party->personName->first_name) ? $user->party->personName->first_name . ' ' . $user->party->personName->last_name : null;
$role = $user->userRole->role->name ?? null
На сервере Dev это работает. На усадьбе $names
и $role
всегда null
. Как я знаю, isset()
должен запускать метод __isset()
в классе Model
, но id нет. версия
Laravel - 5.2.31
PHP на сервере Dev - 7.0.2
PHP на Homestead - 7.0.8-2 + deb.sury.org ~ + 1 дружественный
Это потому, что разница в версиях PHP или есть некоторые настройки?
зачем это? 'isset()' - основная функция PHP. Это абсолютно правильный вызов процедурной функции. –
'first_name' является динамическим свойством. Он не определен в классе 'User'. – xpuc7o