Подтвердить что ты не робот

Error_reporting (E_ALL) не создает ошибку

Это мой php script -

<?php
  error_reporting(E_ALL);
  echo('catch this -> ' ;. $thisdoesnotexist);
?>

Что явно должно показать что-то, если оно должно быть выполнено.

Все, что я вижу, это пустая страница. Почему error_reporting(E_ALL) не работает?

<?php
  ini_set("display_errors", "1");
  error_reporting(E_ALL);
  echo('catch this -> ' ;. $thisdoesnotexist);
?>

Не помогает. Все, что я получаю, это пустая страница.

Я был в php.ini и установил display_errors = On и display_startup_errors = On. Ничего не происходит.

4b9b3361

Ответ 1

В вашем файле есть синтаксическая ошибка, поэтому ваш файл не был интерпретирован, поэтому настройки не были изменены, и у вас есть пустая страница.

Вы можете отделить файл до двух.

index.php

<?php
ini_set("display_errors", "1");
error_reporting(E_ALL);
include 'error.php';

error.php

<?
echo('catch this -> ' ;. $thisdoesnotexist);

Ответ 2

Эта ошибка является ошибкой разбора. Парсер бросает его, просматривая код, пытаясь понять его. На этапе синтаксического анализа еще не выполняется код. Из-за этого он еще не выполнил строку error_reporting, поэтому настройки отчета об ошибках еще не изменены.

Вы не можете изменять настройки отчетов об ошибках (или действительно, делать что-либо) в файле с синтаксическими ошибками.

Ответ 3

В файле php.ini проверьте display_errors. Я думаю, что он выключен.

<?php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

Ответ 4

В файле php.ini проверьте наличие display_errors. Если он выключен, включите его, как показано ниже:

display_errors = On

Он должен отображать предупреждения/уведомления/ошибки.

Пожалуйста, прочтите это

http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting