2013-04-11 36 views
0

我使用strtotime功能转换日期为时间戳像迷茫中转换时间mktime

echo strtotime('4-5-2013'); 

其给予结果1367618400.这是正确的。我的问题是,如果日期的格式是mm-dd-yyyy而不是dd-mm-yyyy,那么问题是什么。例如同一日期是在5月4日而不是4月5日。

+0

很多时候,这可能是一种奇怪的日期格式,可能会被不同的读者解读为不同的格式。您应该使用文本月份。 – Lion 2013-04-11 04:33:29

+0

是否有任何经验法则或任何功能,我发送格式的日期和日期,并得到正确的mktime。 – 2013-04-11 04:39:44

回答

1

按照您的最新评论

可以使用

echo date("M-d-Y", mktime(0, 0, 0, 12, 31, 1997)); 

传递任何格式并使用mktime函数。

+0

什么是32这里? – 2013-04-11 04:59:57

+0

好的,我使这个解决方案'strtotime(date(“d-m-Y”,mktime(0,0,0,12,31,1997)));' – 2013-04-11 05:05:12

0
echo strtotime('5-4-2013');//Oupt puts 1367650800 

echo strtotime('4-5-2013');//Oupt puts 1367618400 
4

的strtotime把字符串与他们-dd-mm-yyyy/mm/dd/yyyy

4-5-2013将4-可能

4/5/2013将5个穿透

日期在M/d/y或DMY格式通过查看在各个组件之间的分离器消除歧义:如果分离器是斜线(/),则假设美国m/d/y;而如果分隔符是破折号( - )或点(。),则假定欧洲的d-m-y格式。

REF:http://php.net/manual/en/function.strtotime.php