我有两台相同的 Debian Squeeze 服务器,运行 php 5.3.3-7+squeeze17,一台运行 1.7.x,另一台运行 2.1.4。
在 1.7 安装时,当我调用调用未定义模型方法的控制器方法时,页面输出:
Fatal error: Call to undefined method Example_Model::get_series_and_products() in /opt/git/online_live/application/controllers/members.php on line 2549
但是,在 2.1.4 上根本没有输出。echo
在未定义函数输出文本之前插入的语句,但之后的语句不输出。
两个站点的 VirtualHost 配置中的 php error_reporting 设置为 -1,这似乎覆盖了 config.php 定义的开发环境设置,它将 error_reporting 设置为 E_ALL。
这是我用于输出的一些额外代码:
echo ini_get('error_reporting');
echo '<br>';
echo phpversion();
两者输出相同:
-1
5.3.3-7+squeeze17
因此,似乎没有其他任何事情胜过我的 error_reporting。
在 2.1.4 的 application/config/config.php 中(没有显示错误):
$config['log_threshold'] = 4; // All Messages
在 1.7 中(显示错误的地方):
$config['log_threshold'] = 0;
但我认为该设置是针对 CI 保留的文件系统日志而不是内联错误。
phpInfo() 在两台主机上反映相同的 error_log 值:
error_log: no value no value
error_reporting: -1 22527
什么可能导致差异?