php date.timezone 的问题和解释 包括python
例子:
运行 sh 1.sh
1.sh内容是:
php -c 1.ini -f a.php
echo
php -c 2.ini -f a.php
echo
python 1.py
echo
1.php内容
<?php
$t = time();
print_r(getdate($t));
echo date_default_timezone_get();
1.ini 内容
date.timezone = PRC
2.ini 内容
date.timezone = UTC
1.py内容
import datetime
import time
t = datetime.datetime.now()
t = t.timetuple()
t = time.mktime(t)
print t
t = datetime.datetime.utcnow()
t = t.timetuple()
t = time.mktime(t)
print t
整体运行结果:
phpsir@zjatphpsir:~$ sh 1.sh
Array
(
[seconds] => 26
[minutes] => 44
[hours] => 21
[mday] => 8
[wday] => 4
[mon] => 1
[year] => 2009
[yday] => 7
[weekday] => Thursday
[month] => January
[0] => 1231422266
)
PRC
Array
(
[seconds] => 26
[minutes] => 44
[hours] => 13
[mday] => 8
[wday] => 4
[mon] => 1
[year] => 2009
[yday] => 7
[weekday] => Thursday
[month] => January
[0] => 1231422266
)
UTC
#下面是1.py的结果
1231422266.0
1231393466.0
总结:
ini是影响getdate 和date的输出结果的,但是不会影响到 [0] => 1231422266
这个值始终是本机时间距离1970年1月1日零时的秒数
python的datetime.datetime.now 和 datetime.datetime.utcnow 看起来就很明显了