请教下,php中的时间函数返回时间不正确是怎么回事?返回的时间为“0000-正确的日期”,年份总是'0000'代码:
echo 'Now: '. date('Y-m-d') ."\n";结果:
Now: 0000-10-15solaris服务器,通过date命令返回结果2009年10月15日 星期四 10时34分26秒 CST环境变量tz=RPC请问如何解决?谢谢。
echo 'Now: '. date('Y-m-d') ."\n";结果:
Now: 0000-10-15solaris服务器,通过date命令返回结果2009年10月15日 星期四 10时34分26秒 CST环境变量tz=RPC请问如何解决?谢谢。
是不是这个??
/^time1. 检查time系统调用返回值是否正确。
2. 返回值如果正确,检查时区设置。
3. 如果以上都没问题,要跟踪php了。下载一份对应版本的php的源码,修改ext/date/php_date.c中定义的date函数,
把每一步操作的结果输出到一个文件,然后编译php,用编译后的php运行上面的代码,
看看错误发生在哪个环节你也可以用gdb调试,指定那个函数的入口添加一个breakpoint
网络上发现是php的bug,只有5.2.10 在Solaris Sparc version 9上有这问题。请参看Also, seeing this after upgrading from 5.2.9 to 5.2.10.On Solaris Sparc version 9. <?=date(Y); ?>returns 0000 on 5.2.10
and returns 2009 as expected on 5.2.9转自:http://bugs.php.net/bug.php?id=48276
不过我还是学习下strace怎么用,感谢。
在AIX下,php5.2.9也有一些问题,不改源码编译都编译不过去