PHP函数strtotime()理解笔记
|
官方手册里面对strtotime的描述: strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。 那么意味着这个函数可以把2010-02-28 18:31:33转换为1267353093这种格式 但是使用它转换时间戳的时候要注意的是服务器的date.timezone的配置,在函数说明中有这么一段话 该函数将使用 TZ 环境变量(如果有的话)来计算时间戳。自 PHP 5.1.0 起有更容易的方法来定义时区用于所有的日期/时间函数。此过程在 date_default_timezone_get() 函数页面中有说明。 上面的话可以这么理解: 如果date.timezone配置为空或者为UTC(格林威治时间),那么它就会直接把传入的时间直接转换为该时间的UNIX时间戳(相当于该时间识别为格林威治时间) 如果date.timezone配置了时区,例如Asia/Shanghai,那么这个函数就会将传入的时间认为是配置的时区的当地时间,然后根据该时区与UTC(格林威治时间)的时差来算格林威治时间的时间戳。 例如: php.ini配置date.timezone为Asia/Shanghai; 我们传入:2010-02-28 18:31:33 函数转出的时间戳的实际时间为: 2010-02-28 10:31:33 因为Asia/Shanghai位于 +8区,那么函数会自动减去了8个钟头的时间来得到格林威治时间 参考程序测试代码:
输出:
(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
