Отчет об ошибках блокируется при разборе ошибок

Я начну с того, что напишу, что видел подобные вопросы и попробовал предложенные решения.

Я запускаю cli, когда я специально помещаю ошибку разбора в php-файл, я не получаю ошибку в stdOut.
Я использую следующие конфигурации:
22527 для сообщения об ошибке
ini_set('error_reporting', E_ALL|E_STRICT);

PHP 5.5.20 (cli) (built: Jan  9 2015 11:20:56)
php -i | grep error
display_errors => STDOUT => STDOUT
display_startup_errors => Off => Off
error_append_string => no value => no value
error_log => no value => no value
error_prepend_string => no value => no value
error_reporting => 22527 => 22527
html_errors => Off => Off
ignore_repeated_errors => Off => Off
log_errors => Off => Off
log_errors_max_len => 1024 => 1024
track_errors => Off => Off
xmlrpc_error_number => 0 => 0
xmlrpc_errors => Off => Off

ДОПОЛНЕНИЕ: Если я добавлю свой собственный фатальный обработчик:

    function fatal_handler() {
$error = error_get_last();
if ($error !== null) {
echo ("\n\nERROR occured!\nFile [{$error['file']}].\nLine: [{$error['line']}].\nMessage: [{$error['message']}]\n\n");
}
exit(1);
}
register_shutdown_function("fatal_handler");

Я вижу ошибку в stdio.

Ниже приведен пример кода (с ошибкой синтаксического анализа), который не выдает ошибки для меня

class A{
const AAA = 'aaa';
static public function Result(A::AAA){

}
}

4

Решение

error_reporting => 22527 => 22527 эквивалентно E_ALL & ~E_DEPRECATED & ~E_STRICT,

использование -1 или же E_ALL уровень ошибки (E_ALL | E_STRICT в PHP 5.4), чтобы показать все ошибки.

Установите его в INI-файл php.ini,

error_reporting = -1

Следующее не будет работать, потому что код содержит ошибку разбора, поэтому ini_set() никогда не звонят.

<?php

ini_set('error_reporting', -1)

class A
{
const AAA = 'aaa';

static public function Result(A::AAA)
{
}
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector