Почему модель возвращает объект? Код:class newsView { public function __construct($model) { //Это пришло из конструктора модели var_dump($model); } public function listmodel() { return 1; } } class newsModel { public function __construct() { return 'Это вернула newsModel'; } } class My { public function showdata() { $model = new newsModel; $view = new newsView($model); $result = $view->listmodel(); return $result; } } $obj = new My(); $res = $obj->showdata(); В ответе var_dump($model); показывает:object(newsModel)#32 (0) { } В чём фишка, почему не строка? И где сама фраза Это вернула newsModel? P.S. Запустить онлайн https://goo.gl/xfuFXG и знает кто ни будь онлайн-демку получше этой убогой?
В данном коде модель newsModel возвращает объект, а не строку, потому что конструктор класса не должен возвращать значение. Конструктор служит для инициализации объекта и может выполнять какие-то действия, но не должен возвращать какое-либо значение. Поэтому строка "Это вернула newsModel" не отображается, так как конструктор возвращает пустой объект класса newsModel.
Если вы хотите передать какие-то данные из конструктора модели во view, то лучше создать отдельные методы для этого. Например, добавить метод getData() в модель, который будет возвращать нужную информацию, и затем вызывать этот метод из контроллера.
Что касается онлайн-демки, где можно попробовать более качественные примеры кода и его исполнения, вы можете попробовать найти ресурсы для онлайн-кода или песочницы для программирования, такие как repl.it или codepen.io. Там вы сможете создавать и проверять код в браузере.
В данном коде модель newsModel возвращает объект, а не строку, потому что конструктор класса не должен возвращать значение. Конструктор служит для инициализации объекта и может выполнять какие-то действия, но не должен возвращать какое-либо значение. Поэтому строка "Это вернула newsModel" не отображается, так как конструктор возвращает пустой объект класса newsModel.
Если вы хотите передать какие-то данные из конструктора модели во view, то лучше создать отдельные методы для этого. Например, добавить метод getData() в модель, который будет возвращать нужную информацию, и затем вызывать этот метод из контроллера.
Что касается онлайн-демки, где можно попробовать более качественные примеры кода и его исполнения, вы можете попробовать найти ресурсы для онлайн-кода или песочницы для программирования, такие как repl.it или codepen.io. Там вы сможете создавать и проверять код в браузере.