Недавно я скомпилировал бинарный файл PHP 5.2.9 и попытался выполнить с ним несколько скриптов PHP. Я могу выполнить некоторые сценарии без проблем, но один из них останавливает их выполнение на полпути, выходя без ошибок или предупреждений. Возвращенный код состояния процесса - 255.
Я прочитал в руководстве, что такой статус «зарезервирован». Вопрос: для чего?
Я полагаю, что это как-то связано с отсутствующими зависимостями в исполняемом файле PHP, но я не уверен.
Кто-нибудь знает, что означает код выхода 255?
PS В скриптах PHP ошибок нет, они нормально работают на других машинах.
php.ini
файлом (т. Е. Внутри файла есть битые символы). Мне потребовалось 2 часа, чтобы понять это. Совет: Если ваш скрипт (т.е.composer.phar
) работает сphp -n composer.phar
, то вашphp.ini
файл, вероятно, поврежден.Это может также означать , что
/etc/php5/cli/php.ini
(в Debian / Ubuntu) или/etc/php.ini
(на RHEL / CentOS / др.) Естьdisplay_errors = Off
это означает , что любые ошибки или предупреждения из сценариев командной строки никуда не уйдут, еслиlog_errors = On
(см такжеerror_log
параметр).Попробуйте запустить ваши скрипты с помощью скрипта-обертки, который использует
php -d display_errors=on ...
источник
-d display_errors=on
подсказку - я пытался отладить собственный скрипт для чьего-то PHP-приложения, которое пытается обрабатывать все журналы исключений самостоятельно, но часто использует исключения. Используя этот флаг, я могу получить исключение для печати в CLI!Это может быть вызвано подавленными сообщениями об ошибках PHP (строка начинается с @). Я нашел строку по
а затем закомментировал @. После этого я получил реальную ошибку и смог легко ее исправить. После этого я также заметил, что PHPStorm уже обнаружил ту же ошибку, но я ее не исправил / не заметил.
источник
Это также может означать, что
/etc/php5/cli/php.ini (в Debian / Ubuntu)
/etc/php.ini (на RHEL / CentOS / и т. д.)
установил
Это означает, что любые ошибки или предупреждения из сценариев командной строки никуда не денутся, если только
Смотрите также параметр error_log.
Попробуйте запустить ваши сценарии с помощью оболочки
источник
В моем случае это была смерть xDebug из-за низкой
xdebug.max_nesting_level
стоимости.источник