2010-04-30

今天处理了一个莫名其妙的配置问题

类归于: symfonymaker @ 14:08

把公司以前用symfony1.2做的一个项目上传到测试服务器上会出现配置文件解析错误,把除了error_reporting之外的所有配置注释掉就会好用,找个很久也没找到原因。

最后没办法开始重写配置, 终于发现原因, 原代码如下:

dev:
.settings:
error_reporting: < ?php echo (E_ALL | E_STRICT) ^ E_NOTICE ^ E_DEPRECATED ."\n" ? >
web_debug: on
cache: off
no_script_name: off
etag: off
default_culture: ja

问题就是由于 E_DEPRECATED 常量导致的,这个常量是5.3之后才添加的, 所以在5.3以下版本的php就会出现常量未定义的错误,导致配置文件解析错误,E_DEPRECATED是一些不推荐使用(也可以说是即将废弃的)的函数错误, 因为程序是在5.2下开发的, 升级至5.3错误异常的多, 所以屏蔽此错误。

解决办法,去掉E_DEPRECATED常量或者进行defined()处理。

随机日志

评论暂缺 »

还没有任何评论。

这篇文章上的评论 RSS feed TrackBack URL

留下评论

WordPress 所驱动