我有给定格式的日期字符串:
$bookingDate1 : 20180928
我们必须将日期格式转换为:
$bookingDate : 28-09-2018
我尝试过:
$bookingDate = substr($bookingDate1,6,2)."-".substr($bookingDate1,4,2)."-".substr($bookingDate1,0,4);
它给出正确的结果,但是我需要更好的解决方案。
谢谢
答案 0 :(得分:0)
答案 1 :(得分:0)
您可以使用“ DateTime :: createFromFormat”
$date = date_create_from_format('d/m/Y:H:i:s', $bookingDate);
如果您想要时间戳记,请使用
$date->getTimestamp();
您可以在此处https://www.w3schools.com/php/func_date_create_from_format.asp
进行查看答案 2 :(得分:0)
尝试
$bookingDate1 = 20180928;
echo Date('d-m-Y',strtotime($bookingDate1));
答案 3 :(得分:0)
使用createFromFormat
使您敢于使用当前的格式
<?php
$str = "20180928";
$date = DateTime::createFromFormat('Ymd', $str);
echo $date->format('Y-m-d');
?>
答案 4 :(得分:0)
在字符串日期w上使用strtotime(),然后应用date('Y-m-d')函数将其转换回日期格式。
$bookingDate1 = strtotime('20180928');
上面的语法会将字符串转换为UNIX TIME FORMAT。之后,我们必须应用
date()
函数将其转换回去。
$bookingDate = date('d-m-Y',$bookingDate1);
这会将字符串格式的日期转换为
Year-month-date format
。现在,“日期”的输出如下。
echo $bookingDate; // 28-09-2018
有关不同的日期格式,请参见:http://php.net/manual/en/datetime.formats.date.php