Size: a a a

2021 May 11

AM

Artem Molotov in PHP
Опять не понял. Что тебе мешает в анонимку завернуть?

muffle(fn(): void => { $variable = file_get_contents(...); });
источник

AM

Artem Molotov in PHP
С ним ты получаешь невозможность отследить ошибку, тогда как с хендлером можно разное придумать, включая логирование всё время на разных уровнях (в зависимости от кейсов)
источник

VC

Vladimir Chernyshev in PHP
это для любителей разное придумывать и логировать каждый чих )
источник

AM

Artem Molotov in PHP
Меня перспектива приглушенных ошибок без возможности отследить не радует. Логировать ты можешь в зависимости от различных параметров, включая отключение в разных средах.
источник

ci

cathunter ivanov in PHP
как его найти, как называется?
источник

AM

Artem Molotov in PHP
php.ini (error_log) или в параметрах виртуального хоста веб-браузера (обычно /var/log/nginx или /var/log/apache2).
источник

VC

Vladimir Chernyshev in PHP
когда ошибки действительно ошибки - согласен, но в когда false из “сишной” функции не ошибка с точки и зрения логики, а лишь признак выбора юзкейса…
источник

AM

Artem Molotov in PHP
Вторую часть опять не понял. PHP для falsable функций ошибки не бросает
источник

ci

cathunter ivanov in PHP
php.ini (error_log) = no value
/var/log/nginx/error.log  пустой файл
источник

AM

Artem Molotov in PHP
Конфиг с error_log может быть в разных местах задекларирован. Смотри phpinfo() тем способом, которым ты обычно приложение запускаешь. Если и там пусто, то логов нет и нужно включить. Дальше Гугл поможет.
источник

ci

cathunter ivanov in PHP
спасибо
источник

AG

Alexander Grigorev in PHP
Всем привет, Подскажите библиотеку для чтения pdf,
нужно из текста получить числовой  идентификатор
источник

AM

Artem Molotov in PHP
А из каких есть выбор?
источник

VC

Vladimir Chernyshev in PHP
пускай будет для тех которые бросают. В общем, когда ошибка должна быть обработона локально и выполнение должно продолжиться, хэндлеры усложняют код
источник

MM

Maksim Masalov in PHP
источник

AM

Artem Molotov in PHP
Почему усложняют? Не могу понять. Неужели следующее сложно читать?

set_error_handler(fn() => null);

// some your code

restore_error_handler();
источник

ДК

Дмитрий Кожанов... in PHP
nginx
fastcgi_read_timeout
proxy_read_timeout

php-fpm
request_terminate_timeout
источник

AM

Artem Molotov in PHP
Там входящий параметр не фильтруют, насколько я вижу.
источник

AM

Artem Molotov in PHP
Хотя не уверен. Ошибка может состоять в другом (работоспособности самой функции).
источник

VC

Vladimir Chernyshev in PHP
$wasError = false;
set_error_handler(function () use ($wasError) {
 $wasError = true;
};
// some your code
restore_error_handler();
if (!$wasError) {
 // some main code
} else {
 // some alternative code
}

уже не так просто выглядит
источник