【发布时间】:2014-01-20 04:02:46
【问题描述】:
每次我在控制台中启动 php 时都会收到一些警告。
xx@peach ~ $php -i | echo "test";
test
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/idn.so' - /usr/lib/php5/20100525/idn.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/suhosin.so' - /usr/lib/php5/20100525/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0
考虑到 cli/php.ini 不应该有任何警告。
error_reporting = E_ALL & ~E_WARNING & ~E_NOTICE & ~E_DEPRECATED & ~E_USER_DEPRECATED & ~E_USER_NOTICE
display_errors = On
display_startup_errors = Off
我通过
检查了使用过的 php.ini 文件xx@peach ~ $ php -i | grep 'Configuration File'
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/idn.so' - /usr/lib/php5/20100525/idn.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/suhosin.so' - /usr/lib/php5/20100525/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini
我不明白为什么每次从控制台启动 php 时都会显示警告。我认为使用“~E_WARNING”会禁用警告?
【问题讨论】:
-
suhosin 更多地用于基于 Web 的安全性。在 CLI 模式下确实不需要加载它,因此从 CLI .ini 文件中删除它不会造成任何问题。
标签: php warnings command-line-interface error-reporting