dongzong7467 2014-02-24 02:55
浏览 634
已采纳

将自定义日期格式字符串转换为yyyy / mm / dd

I have this date format that looks somewhat like this:

Sun Jun 29 2014 08:00:00 GMT+0800 (Malay Peninsula Standard Time)

This results from the x-editable datepicker when I try to output the value it gets from a validate function.

But, regardless of where I get the date format from, how do I convert this date to yyyy/mm/dd format? It’s not a date object but really just a long string that outputs the above. And I need to be able to convert it to 2014-06-29. Many thanks!

  • 写回答

1条回答 默认 最新

  • dongliu6848 2014-02-24 02:57
    关注

    You should use a regular expression to extract the relevant part of your string and then apply PHP date functions to it:

    $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])) : "";
    

    DEMO

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了