【发布时间】:2015-06-15 12:52:25
【问题描述】:
我的 SQL 服务器使用 mm/dd/yyyy 日期格式,但我使用 jQuery 实现的日期选择器将日期格式设置为 dd/mm/yyyy。
所以我对此进行了编码以检查给定输入的格式是否为mm/dd/yyyy,但无论输入的日期以哪种格式给出,它都会评估为真。PHP 代码是,
$Temp = DateTime::createFromFormat('d/m/Y', $StartsOn);
if($Temp)
$Temp->format('m/d/Y');
仅当输入为dd/mm/yyyy 时,我才需要转换为mm/dd/yyyy 格式。所以请告诉我我在代码中犯的逻辑错误是什么。
【问题讨论】:
-
你为什么不把mm/dd/yyyy炸开然后放在一起呢?
-
为什么是 sql-server 标签?你的问题只是 php 相关的。
-
日期列的定义是什么,因为它是 mm/dd/yyyy 是不寻常的?通常我希望看到它为 yyyy-mm-dd。
-
仅供参考,没有办法正确区分 mm/dd/yyyy 和 dd/mm/yyyy (这就是为什么你永远不应该使用前者,对不起美国) .例如 02/03/2015 3 月 2 日或 2 月 3 日。参考:xkcd.com/1179
-
使用
xx-xx-xxxx或xx/xx/xxxx,PHP 将-分隔符视为美国格式,/分隔符视为欧洲格式 - 如文档所述,php.net/manual/en/datetime.formats.date.php
标签: php