在Codeigniter中更改日期格式

时间:2018-09-03 01:53:21

标签: php codeigniter

我有这个观点

3.0.0-beta8

有结果

<?PHP 
    $no = 0;
    foreach ($dt as $key => $row) { 
        $no++;
    ?>
<td style="text-align:center;"> <?=$row->TANGGAL_KADALUARSA;?> </td>

我想要的是将格式更改为

21/11/2018  0:00:00

5 个答案:

答案 0 :(得分:1)

您可以使用此示例进行转换

$date=date_create("21-11-2018  0:00:00");
echo date_format($date,"d F y"); //it will echo 21 November 18

答案 1 :(得分:1)

尝试一下

$date = "21/11/2018  0:00:00";
echo date('d F Y', strtotime(str_replace('/', '-', $date)))

PHPFiddle

  

仅供参考::使用此格式,您可以将其用于保存具有/的数据库日期,并且MySQL不会使用无效的日期格式抛出错误。

答案 2 :(得分:0)

您可以尝试以下方法:

<?php
$str =$dt;
  echo date('"d F Y"', strtotime($str));
?>

答案 3 :(得分:0)

恕我直言,最好的方法是使用DateTime::createFromFormat函数,请尝试以下

<?php
$no = 0;
foreach ($dt as $key => $row) { 

    $objTanggalKadaluarsa = DateTime::createFromFormat('d/m/Y H:i:s', $row->TANGGAL_KADALUARSA);
    $no++;
?>
<td style="text-align:center;"> <?=$objTanggalKadaluarsa->format('d F Y');?> </td>

答案 4 :(得分:0)

尝试一下(我的格式数据是2018-09-03 16:12:40)

$month = array("January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"
);

echo substr($row->TANGGAL_KADALUARSA,8,2).' '.$month[substr($row->TANGGAL_KADALUARSA,5,2)-1].' '.(substr($row->TANGGAL_KADALUARSA,0,4)).' | '.substr($row->TANGGAL_KADALUARSA,-8);