繁体   English   中英

PHP 将字符串转换为日期时间

[英]PHP convert string into date time

我有一个来自 db 的 php 字符串,它是20/11/2017我想将它转换为毫秒。 这是我的代码。

$the_date = "20/11/2017";
$mill_sec_date = strtotime($the_date);
var_dump($mill_sec_date);

但它不打印任何东西而不是

bool(false);

有什么问题,我该如何解决????

当使用斜杠分隔日期的各个部分时,PHP 会将格式识别为 MM/DD/YYYY。 这使您的日期无效,因为没有第 20 个月。 如果要使用日期和月份交换的格式,则需要使用连字符,例如 DD-MM-YYYY。

$time = strtotime('10/16/2003');

$newformat = date('Y-m-d',$time);
print_r($newformat);

使用 DateTime 类调用函数 createFromFormat

    $date = date_create_from_format('d/M/Y:H:i:s', $string);
$date->getTimestamp();

很可能您弄错了日期格式,请参阅此处以获取支持的日期和时间格式列表:

本节介绍 strtotime()、DateTime 和 date_create() 解析器理解的所有不同格式。

strtotime 不接受您的字符串,您可以使用createFromFormat set 设置时间字符串的格式类型,如下所示,您也可以查看现场演示 你也可以参考这个答案

var_dump(DateTime::createFromFormat('d/m/Y', "20/11/2017"));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM