我的PHP脚本正在将“ / Date(1403071826510)/”作为JSON日期。如何将其转换为PHP Date或DateTime?
这就是我在做什么:
$milliseconds = (int) preg_replace("/[^0-9 ]/", '', $strDate);
return json_encode(Date('d/m/Y h:m',$milliseconds/1000));
但我的转换返回2147483647而不是1403071826510,因为我的操作系统是32位。
任何想法如何从接收到的字符串中获取Date或DateTime?
谢谢
这里真的不需要正则表达式。您可以简单地从字符串中间提取秒数,然后进行处理:
$sec =substr("/Date(1403071826510)/", 6, 10);
$dt = date("Y-m-d H:i:s",$sec); // 2014-06-18 06:10:26
注意@zamnuts的评论,这是处理早期日期的正则表达式版本:
preg_match('#Date\(([0-9]{0,10}?)([0-9]{1,3}\))#',"/Date(1403071826510)/",$matches);
$dt = date("Y-m-d H:i:s", $matches[1]);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句