Имеется сообщение об ошибке, заголовки уже отправлены, показывая, что print_r вызывает ошибку, но в учебнике массив print_r появляется перед панелью навигации в верхней части веб-страницы.
class PostController extends AppController
{
public function actionTest()
{
$names = ['Ivanov', 'Petrov', 'Sidorov'];
print_r($names);
return $this->render('test');
}
}
Всякий раз, когда вы хотите проверить / распечатать свои данные (в целях тестирования), вы должны поставить die();
перед рендерингом представления.
@Gru die()
нарушит поток фреймворка - вам в первую очередь следует избегать использования echo
/ print_r
.
Хорошо, если мне нужно проверить array
или data
, я бы выбрал print_r();
, а затем return;
в следующей строке.
Вы не должны выводить значения с помощью echo, print_r или var_dump .. перед возвратом
class PostController extends AppController
{
public function actionTest()
{
$names = ['Ivanov', 'Petrov', 'Sidorov'];
return $this->render('test');
}
}
в вашем случае удалите print_r($names);
вы пытаетесь вывести некоторые данные до перенаправления заголовка. вот в чем проблема. удалите
print_r($names);
, и все будет хорошо