当我在服务器中运行以下命令行时:
$ php -r '$d = new \DateTime("2017-05-22");'
效果很好。
另一方面,我在同一台服务器上有一个symfony web应用程序,方法如下:
function createAdFromFeedAction(Request $request){
try{
$ad_values = $request->request->all();
$datetime = new \DateTime($ad_values["date"]);
}
catch(\Exception $e ){
echo $e->getMessage();
}
}
但是我收到了异常消息:
DateTime :: __ construct():依赖系统是不安全的 时区设置。您必需使用date.timezone设置 或者date_default_timezone_set()函数。如果您使用过任何一个 那些方法,你最有可能仍然得到这个警告 拼写错误的时区标识符。我们选择了时区\' UTC \' 现在,请设置date.timezone来选择你的timezone.null
我已在date.timezone
文件中设置php.ini
,如您所见:
我已重新启动Web服务器并清理symfony缓存:php app/console cache:clear --env=dev
我做错了什么?
注意:在生产服务器中工作正常,所以我不会使用date_default_timezone_set()
。
Note3 php版本的开发服务器是PHP 5.4.45-1~docdeb + 7.1(cli)和php版本的prod是PHP 5.4.36-0 + deb7u1 (CLI)