2013-06-05 3 views
33

Это мой PHP script-error_reporting (E_ALL) не приводит к ошибке

<?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. Ничего не происходит.

+1

Как 'display_errors' установка? – PeeHaa

+0

check display_errors установка –

+0

Не помогает, поскольку я размышлял о моем редактировании вопроса. –

ответ

45

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

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

index.php

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

error.php

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

Это работает. Index.php показывает ошибку. Но независимо от того, что я делаю, error.php остается большой пустой страницей. –

4

В вашем php.ini проверке файла для display_errors. Если он выключен, выполните следующие действия:

display_errors = On 

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

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

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

+0

Я установил display_errors = On, но ничего не происходит –

8

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

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

9

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

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

Я просто установил оба из них в положение Вкл. Без изменений. –

+0

вы не встраиваетесь, их нужно установить в файле php ini – exussum

Смежные вопросы