Почему выводятся неопределенные свойства объектов в PHP? Доброе утро. Специально допустил ошибку в имени переменной при ее определении. Но код все-равно работает. Что можете посоветовать? lastname; } function setName($name) { $this -> name = $name; $this -> getName(); } } $my_client = new Customer; $my_client -> lastname = 'Doe'; $my_client -> setName('John'); echo ''; echo $my_client -> name . ' (test)'; echo $my_client -> lastname; ?>
Результат работы кода:Name: Doe John (test) Doe
Ошибка здесь заключается в том, что при определении переменной в классе Customer вы использовали $name1 вместо $name. PHP по умолчанию не строгий язык, поэтому он не выдаст ошибку при обращении к неопределенной переменной $name в методе setName.
Чтобы исправить это, вам нужно использовать правильное имя переменной $name при определении переменной в классе Customer:
var $name;
После этого код будет работать корректно и вы не получите неопределенных свойств объектов.
Также рекомендуется настроить вывод ошибок PHP в режим отображения, чтобы в случае ошибок вы могли их увидеть и исправить.
Ошибка здесь заключается в том, что при определении переменной в классе Customer вы использовали $name1 вместо $name. PHP по умолчанию не строгий язык, поэтому он не выдаст ошибку при обращении к неопределенной переменной $name в методе setName.
Чтобы исправить это, вам нужно использовать правильное имя переменной $name при определении переменной в классе Customer:
var $name;После этого код будет работать корректно и вы не получите неопределенных свойств объектов.
Также рекомендуется настроить вывод ошибок PHP в режим отображения, чтобы в случае ошибок вы могли их увидеть и исправить.