Ошибка заголовка () не показана в php

Я написал программу PHP, я использую функции session_start() и header() , я знаю, что должен использовать эти функции, прежде чем отправлять что-либо клиенту. это нормально, но для теста я отправляю тестовое сообщение клиенту с echo "test"; перед использованием header (), но я не получил никаких ошибок и функции заголовка без проблем!

В предыдущих версиях PHP в это время я получаю сообщение вроде:

 Warning: Cannot modify header information - headers already sent by (output started at /some/file.php:22) in /some/file.php on line 60 

Я не знаю, почему я не получил сообщение об ошибке!

Моя версия php – 5.3.1, а error_reporting – на E_ALL

Вы не видите ошибку, потому что
а. буферизация вывода включена
б. сервер игнорирует вашу функцию error_reporting, потому что что-то другое указывает, что иначе запускает phpinfo(); и посмотреть, что он там говорит о output buffering и об error_reporting .

Это может быть возможно, потому что вы записываете в выходной буфер (ob_start), который фактически ничего не возвращает клиенту, пока вы явно не очистите буфер (ob_flush или ob_end_ *), или скрипт не закончится.

Тот факт, что вы не можете отправлять заголовки после того, как вы начали писать основную часть вашего ответа HTTP, – это не php, а ограничение протокола HTTP, поэтому это тоже не может быть версией.

Многие фреймворки, такие как Zend Framework, используют выходные буферы, поэтому разработчику не нужно заботиться о заказе.

Я нашел проблему, я не использую FrameWork.

проблема была error_reporting('E_ALL');

Я написал этот код в первой моей программе, поэтому PHP не возвратил никаких ошибок! Я удалил эту строку, и я получаю ошибки!

Это шутит, потому что эта строка говорит PHP, чтобы показать ВСЕ ошибки! Я не знаю, почему PHP не показывает никаких ошибок.