我结束了棒的短端和一个非常冗长的字符串作为日期:转换冗长字符串日期PHP
Sun Oct 5, 2014 10am to 11am PDT
我想将其转换为一个PHP Date对象,所以我可以写它到一个MySQL数据库。如果您注意到,它有一个“to”,表示事件持续时间。我已经搜索了这个转换相当多,并没有发现任何不是广泛的字符串解析。我接受所有的建议和想法。
我结束了棒的短端和一个非常冗长的字符串作为日期:转换冗长字符串日期PHP
Sun Oct 5, 2014 10am to 11am PDT
我想将其转换为一个PHP Date对象,所以我可以写它到一个MySQL数据库。如果您注意到,它有一个“to”,表示事件持续时间。我已经搜索了这个转换相当多,并没有发现任何不是广泛的字符串解析。我接受所有的建议和想法。
原因这不是一个有效的时间或日期字符串,你将无法解析它,因为它是。即使您看起来不喜欢这种方式,也必须进行一些字符串解析。
如果你想有你有做2个日期的持续时间,并从更高的一个
减去低以下是此一个变通。首先需要解析字符串,然后生成数据库保存的开始日期和结束日期/时间
$d = 'Sun Oct 5, 2014 10am to 11am PDT';
$de = explode('to',$d);
$from = DateTime::createFromFormat('D M d, Y Ha', trim($de[0]));
$to_time = explode(' ',trim($de[1]));
$to = DateTime::createFromFormat('Y-m-d Ha',$from->format("Y-m-d").' '.trim($to_time[0]));
echo $from->format("Y-m-d H:i:s");
echo '<br />';
echo $to->format("Y-m-d H:i:s");
echo '<br />';