栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

URL中的日期dd / mm / yyyy

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

URL中的日期dd / mm / yyyy

使用时,

strotime()
请确保使用有效的datetime格式。否则
strtotime()
会返回
false

给您一个意外的值。

假定使用XX / XX /
XXXX格式的日期为美国格式,这意味着前两位数字代表月份,后两位数字代表月份,后四位代表年份。使用破折号时,日期假定为欧洲格式。例如:

04/18/2017 = April 18, 201712/18/2017 = December 18, 201718-04-2017 = April 18, 201718-12-2017 = December 18, 2017

如果您不小心切换了日期和月份

strtotime()
,则日期将返回false,因为日期无效。

18/04/2017 // error18/12/2017 // error04-18-2018 // error12-18-2017 // error

上面的例子很简单。但是,当日期不确定时,您可能会遇到问题。例如:

04/12/2017 = April 12, 201712/04/2017 = December 4, 201704-12-2017 = December 4, 201712-04-2017 = April 12, 2017

在上面的示例中,通过切换日期和月份,我们仍然可以获得有效的日期,这可能会在您的应用程序中导致意外的结果。为了解决这些潜在的问题,建议使用

DateTime::createFromFormat()
解析日期并返回一个
DateTime()
对象,您可以从该对象获得Unix时间戳,将日期转换为另一种格式,或者将其与其他
DateTime
对象进行比较。

// Parse US date format$date1 = DateTime::createFromFormat('m/d/Y', '04/18/2017');// Get Unix timestamp of 1493581268$timestamp = $date1->getTimestamp();// Parse European date format$date2 = DateTime::createFromFormat('d-m-Y', ''18-04-2017);// Get MySQL format (ISO-8601) of 2017-04-18$mysqlDate = $date2->format('Y-m-d');

也可以看看:

  • 使用PHP中的比较运算符比较DateTime对象

对于您的特定情况,以下代码将起作用:

$date = $date1 = DateTime::createFromFormat('m/d/Y', '20/02/2000');$D->query = $date->format('Y-m-d'); // 2000-02-20


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/416377.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号