我有以下格式的日期时间输入字符串
Wednesday 9th 2018 12.00am
我想把它转换成这样的东西
2018-03-09
我尝试使用strtotime功能,但它没有用。 有什么想法吗?
答案 0 :(得分:0)
没有月份规范PHP无法选择月份作为日期。 我按照你的日期输入添加月份准备了解决方案: 2018年3月9日星期三12.00am
<?php
$original_date = "Wednesday 9th March 2018 12.00am";
$pieces = explode(" ", $original_date);
$new_date = date("Y-m-d",strtotime($pieces[1]." ".$pieces[2].",".$pieces[3]));
echo $new_date;
输出:2018-03-09
希望这有帮助!
答案 1 :(得分:0)
检查提供正确日期所需的日期。
<?php
$givendate = "Wednesday 7th March 2018 12.00am";
echo $newDate = date("Y-m-d", strtotime($givendate));
?>
答案 2 :(得分:0)
这是一种方法,可以找到哪个月有第9个作为星期日 我循环几个月并将它们添加到字符串中,看看那个月的那一天是否与字符串中的那一天相同 如果它是真的我将它添加到&#34;列表&#34;可能的日期。
$str = "Wednesday 9th 2018 12.00am";
$months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
$arr = explode(" ", $str);
$day = $arr[1];
$parts = [$arr[0]. " ".$arr[1], $arr[2]. " ".$arr[3]];
Foreach($months as $m){
$unix = strtotime($parts[0] . " " .$m . " " . $parts[1]);
If(date("d", $unix) == substr($day,0,-2)) $res[]= date("Y-m-d", $unix);
}
Var_dump($res);