PHP 5.x strotime未正确解析英国格式d-m-y
我已经使用相同的代码5年多了,PHP5.x,突然发现strotime和UK日期格式出现了问题。我写了这个小脚本来测试:PHP 5.x strotime未正确解析英国格式d-m-y,php,mysql,date,strtotime,date-formatting,Php,Mysql,Date,Strtotime,Date Formatting,我已经使用相同的代码5年多了,PHP5.x,突然发现strotime和UK日期格式出现了问题。我写了这个小脚本来测试: <?php echo "<br /><b>PostDate: 1-7-15</b>"; $format="d-m-y"; $date="1-7-15"; $c = strtotime($date); echo "<br /><b>Unix TS: - ".$c."</b>"; $a = date($f
<?php
echo "<br /><b>PostDate: 1-7-15</b>";
$format="d-m-y";
$date="1-7-15";
$c = strtotime($date);
echo "<br /><b>Unix TS: - ".$c."</b>";
$a = date($format,$c) ;
echo "<br /><b>Unix TS to date - ".$a."</b>";
echo "<br /> <br />";
echo "<br /><b>PostDate: 7/1/15</b>";
$format="m/d/y";
$date="7/1/15";
$c = strtotime($date);
echo "<br /><b>Unix TS: - ".$c."</b>";
$a = date($format,$c) ;
echo "<br /><b>Unix TS to date - ".$a."</b>";
?>
你可以清楚地看到,英国版本是不正确的,美国版本是正确的。英国版本未正确转换为Unix时间戳
就像我之前说的,我已经用strotime这种方法很多年了,突然这些结果?我疯了吗 我换了行:
$c = strtotime($date);
致:
它适用于所有日期格式,甚至是d M y。真奇怪…我换了一行:
$c = strtotime($date);
致:
它适用于所有日期格式,甚至是d M y。真奇怪…你测试过其他php版本吗?我试过5.4、5.5、5.6和7.0。7.0立即破坏了我的代码,所以我跑去找掩护。谢谢你的编辑。你测试过其他php版本吗?我试过5.4、5.5、5.6和7.0。7.0立即破坏了我的代码,所以我跑去找掩护。谢谢你的编辑。下次再拿吧。
$c=strtotime(date($format, strtotime($date)));