【问题标题】:PHP, how to convert date in string in format dd-mm-YYYY to date in string in format YYYY-mm-dd? [duplicate]PHP,如何将 dd-mm-YYYY 格式的字符串日期转换为 YYYY-mm-dd 格式的字符串日期? [复制]
【发布时间】:2015-01-09 22:00:55
【问题描述】:

我有一个字符串变量名$mydate,意思是10 january 2014

$mydate="10-01-2014";

我想把它转换成字符串变量也是'2014-01-10'

嗨,半疯狂, 我把你的解决方案是这样的:

foreach($report_data['summary'] as $key=>$row) {

        $substrdate=substr($row['payment_type'],-16); //i have see the result is 10-01-2014

        $originalDate = '10-01-2014';
        try {
          $date = DateTime::createFromFormat('d-m-Y', $originalDate);
          //echo $date->format('Y-m-d');
        } catch(Exception $e) {
          die("Error converting date. Exception caught: " . $e->getMessage());
        }



        $summary_data_row[] = array('data'=>'<span style="color:'.$color.'">'.$date->format('Y-m-d').'</span>', 'align'=>'right');
        $summary_data_row[] = array('data'=>'<span style="color:'.$color.'">'.$row['comment'].'</span>', 'align'=>'right');
   }//end of foreach

它运行良好,直到我用具有相同值的 $substrdate 替换变量 $originalDate -> '10-01-2014' 为什么它不再工作了?

【问题讨论】:

  • echo date('Y-m-d')aj mbak。 Bs dipisah pake -, |, / dll.
  • Skrg kendala ny apa stlh pk $substrdate ? ga keluar atau formatnya salah ?

标签: php date datetime-format


【解决方案1】:

使用DateTime 读取日期并将其转换为新格式。

$date = DateTime::createFromFormat('j F Y', '10 january 2014');
echo $date->format('Y-m-d');

【讨论】:

    【解决方案2】:

    使用PHP的DateTime对象,可以使用createFromFormat的方法:

    $date = DateTime::createFromFormat('m-d-Y', '10-01-2014');

    然后你可以通过以下方式转换它:

    echo $date-&gt;format('Y-m-d');

    当然,您应该将这一切包装在 try catch 块中:

    $originalDate = '10-01-2014';
    try {
      $date = DateTime::createFromFormat('m-d-Y', $originalDate);
      echo $date->format('Y-m-d');
    } catch(Exception $e) {
      die("Error converting date. Exception caught: " . $e->getMessage());
    }
    

    【讨论】:

    • 嗨半疯。感谢您的回复。请看我上面编辑过的帖子..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-19
    • 2012-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-29
    • 2011-06-19
    相关资源
    最近更新 更多