我的日期格式看起来有点像这样:
Sun Jun 29 2014 08:00:00 GMT + 0800(马来半岛标准时间)
当我尝试输出从验证函数获取的值时,这来自 x-editable datepicker 。
但是,无论我从何处获取日期格式,如何将此日期转换为yyyy/mm/dd
格式?它不是一个日期对象,但实际上只是一个输出上述内容的长字符串。我需要能够将其转换为 2014-06-29 。非常感谢!
答案 0 :(得分:5)
您应该使用正则表达式来提取字符串的相关部分,然后将PHP日期函数应用于它:
$str = "Sun Jun 29 2014 08:00:00 GMT+0800 (Malay Peninsula Standard Time)";
$pat = "/(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat) (?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (?:0?[1-9]|[1-2][0-9]|3[0-1]) [0-9]{4} [0-9]{2}:[0-9]{2}:[0-9]{2} GMT\\+[0-9]{4}/";
$date = preg_match($pat, $str, $mat) ? date("Y-m-d", strtotime($mat[0])) : "";