Допустим, есть код на PHP с ошибкой. По понятным причинам, интерпретатор языка прекращает обработку программы, как только находит ошибку.
Однако, не всегда она выводится на экран.
Не помогает ни error_reporting('E_ALL');, ни ini_set('display_errors', 1);, ошибка лишь отражается в логах apache.
Можно ли все-таки добиться вывода ошибок на экран в любом случае?
Вывод ошибок на экран при выполнении скриптов PHP
1 сентября 2008, 10:05
Автор: 1234ru
|
NO USERPIC
|
rgbeastНадо не забыть установить ini_set('display_errors','On');В PHP5 E_ALL не включает E_STRICT, надо указывать E_ALL | E_STRICT, в PHP 6 E_ALL включает E_STRICT http://ru2.php.net/error_reporting |
01.09.2008, 10:28 Ответить |
|
1234ruА бывает, что все это не помогает? (например, какая-то настройка апача, которая не даёт из скрипта менять режим вывода ошибок?)То, что не убивает нас, делает нас инвалидами.
|
05.10.2008, 22:17 Ответить |
|
NO USERPIC
|
rgbeastНастройка апача AllowOverride None/All повлияет только если исправление вносится через .htaccess. ini_set() функция php и зависит от настроек самого php. |
05.10.2008, 22:31 Ответить |
|
1234ruМожно ли настроить так, чтобы она не работала? (в смысле, не могла менять режимы)То, что не убивает нас, делает нас инвалидами.
|
05.10.2008, 22:40 Ответить |
|
NO USERPIC
|
rgbeastСудя по документации php, нельзя: http://ru2.php.net/manual/ru/ini.php#ini.list |
05.10.2008, 23:16 Ответить |
|
1234ruЯсно. Спасибо.То, что не убивает нас, делает нас инвалидами.
|
06.10.2008, 00:29 Ответить |
|
1234ruКод<?php error_reporting(E_ALL | E_STRICT) ; ini_set('display_errors', 'On'); echo 'asdf'; !@$ // тут специально допущена ошибка - должен реагировать ?> не приводит к выводу ошибок (хотя и не работает: на экран не выводится в т.ч. строка 'asdf') Почему такое может быть? То, что не убивает нас, делает нас инвалидами.
|
14.11.2008, 02:10 Ответить |
|
NO USERPIC
|
rgbeastВполне выдает ошибку:PHP Parse error: syntax error, unexpected ';', expecting T_VARIABLE or '$' in /home/rgbeast/a.php on line 10 Попробуй в php.ini исправить эти параметры. |
15.11.2008, 12:07 Ответить |
|
1234ruСтоитerror_reporting = E_ALL & ~E_NOTICE display_errors = Off Сервер не мой, менять ini не могу error_reporting(E_ALL | E_STRICT) и ini_set('display_errors', 'On') не работают Получается, ничего не сделаешь? То, что не убивает нас, делает нас инвалидами.
|
20.11.2008, 12:57 Ответить |
|
NO USERPIC
|
rgbeastВполне возможно, что php скомпилирован так, что параметры изменяются только в php.ini. Иногда ошибки попадают в error.log апача. |
20.11.2008, 13:41 Ответить |
|
1234ruНе, в error.log'е-то они есть. Только мне не хочется каждый раз туда лазить - неудобно.То, что не убивает нас, делает нас инвалидами.
|
20.11.2008, 13:54 Ответить |
|
1234ruЕсли честно, не совсем правильно сформулировал. Не error_reporting(E_ALL | E_STRICT); стоял, а error_reporting('E_ALL' | 'E_STRICT');. Мне всегда казалось, что это одно и то же.Тем не менее, когда убрал кавычки, ошибки стали показываться. Правда, опять же не в include-файлах. То, что не убивает нас, делает нас инвалидами.
|
21.11.2008, 08:59 Ответить |
|
1234ruВ .htaccess вписал первой строчкойphp_value display_errors 1 Стал выводить ошибки из непосредственно того скрипта, к которому обращается, а из include - нет. Как вывести ошибки и из подключаемых файлов? То, что не убивает нас, делает нас инвалидами.
|
20.11.2008, 17:48 Ответить |
|
NO USERPIC
|
rgbeast.htaccess в корне лежит? |
20.11.2008, 20:49 Ответить |
|
1234ruВ том каталоге, где скрипт выполняется.php_value display_errors 1 точно работает, т.к. если убрать, то перестают выводиться ошибки даже из самого скрипта непосредственно. То, что не убивает нас, делает нас инвалидами.
|
20.11.2008, 21:16 Ответить |
|
NO USERPIC
|
rgbeastРаспространяется ли действие .htaccess на файлы, которые внутри include? Они ведь в других каталогах |
20.11.2008, 21:35 Ответить |
|
1234ruНет, в моем случае он был в том же каталоге.Хотя вопрос интересный... То, что не убивает нас, делает нас инвалидами.
|
20.11.2008, 22:06 Ответить |
|
NO USERPIC
|
plutonheader("Content-type: text/html; charset=utf-8");header("Cache-Control: no-cache"); эти строки выдают на хосте ошибку не удаётся изменить информацию плиз тут есть ошибка?? pluton
|
04.02.2012, 11:33 Ответить |
© 2007—2012 webew.ru, связаться: x собака webew.ru
Сайт использует Flede и соответствует стандартам WAI-WCAG 1.0 на уровне A.
Сайт использует Flede и соответствует стандартам WAI-WCAG 1.0 на уровне A.
