date.timezone not set in php.ini. Please contact ...解决方案

无论是在LAMP还是在LNMP系统环境下, 只要PHP的版本在5.3及其以上的版本时, 无论是在安装oscommerce, 还是在安装zen cart, 以及其他的CMS时, 都会遇到如下所示的错误信息(以安装zen cart为例)

ERROR: date.timezone not set in php.ini. Please contact your hosting company to set the timezone in the server PHP configuration before continuing.

遇到这个错误的话, 你就无论进行下一步的安装了. 归根到底是PHP的版本问题, 必须解决这个date.timezone 的设置问题, 根据它的提示来看, 只需要找到PHP.INI文件, 然后给它赋值即可. 如

date.timezone = PRC //面向中国的系统

或者是如下的形式:

date.timezone = Asia/Chongqing

这样设置后再保存, 然后重启服务后, 在安装时仍然会出现这种问题. 经过搜索知道, date.timezone这个参数是由PHP5.1版本引入, 但是在PHP5.3时这样的设置好像不起作用了, 如果不解决PHP的问题, 整套程序都会停止, 经过一段时间的摸索及结合实践, 找到了一个解决方案, 即是在调用这个参数的文件头部加入一个时区的定义值, 如下:

ini_set('date.timezone','Asia/Chongqing');

具体的ini_set()函数的用法, 可以参考官方说明, 经过这样设置后, 你会发现, 这个时区问题已经消失了, 可以进行正常的安装了. 至此,

ERROR: date.timezone not set in php.ini. Please contact your hosting company to set the timezone in the server PHP configuration before continuing.

这个问题解决.

source: http://www.cnblogs.com/wwufengg/p/date-timezone-zen-cart-error.html