strtotime兼容性

时间:2013-03-18 23:15:16

标签: php

好的,这与我提出的另一个问题有关,但正如我现在所指出的那样 这个问题我认为在一个新问题上会更清楚。

我遇到的问题与PHP 4.4下的strtotime有关

我有一个更大的脚本在PHP 4.4下失败但在PHP 5 +

下工作

为了检查它,我写了以下内容并将其复制到两个服务器之一 运行PHP 4.4和另一个PHP 5.3。

<?php
  $my_time = '2013-03-18T21:38:58.000Z';
  $my_time = strtotime($my_time);
  echo $my_time;

?>

PHP 4.4下的输出是:-1

PHP 5.3下的输出是:1363642738

有没有办法在PHP 4.4下获得与5.3 ??

相同的结果

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:3)

-1是PHP的失败代码&lt; 5.1。这让我觉得PHP 4无法解析该字符串。

这意味着您必须使用两种版本支持的格式。作为一个黑客,你可以做一些字符串操作。如果你可以改变字符串的格式,那就是你最好的路线。 (实际上,你最好的选择就是远离PHP 4。)

答案 1 :(得分:1)

我没有安装PHP 4来测试,但尝试从最后删除.000Z,PHP.net上strtotime页面上的所有示例都没有那个位PHP 4.4可能不支持它。 如果最终有效,你可以使用substr解析任何时间戳($ my_time,0,19)