изменить формат даты в codeigniter - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть это представление

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

с результатом

21/11/2018  0:00:00

Я хочу изменить формат на

21 December 2018

Ответы [ 5 ]

0 голосов
/ 03 сентября 2018

попробуйте это (мой формат данных 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);
0 голосов
/ 03 сентября 2018

imho, лучше всего использовать функцию 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>
0 голосов
/ 03 сентября 2018

Попробуйте это

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

PHPFiddle

К вашему сведению: с этим формированием вы можете использовать это для сохранения в БД даты, которая имеет / и MySQL не выдаст ошибку с неверным форматом даты.

0 голосов
/ 03 сентября 2018

Вы можете попробовать это:

<?php
$str =$dt;
  echo date('"d F Y"', strtotime($str));
?>
0 голосов
/ 03 сентября 2018

Вы можете преобразовать это с этим примером

$date=date_create("21-11-2018  0:00:00");
echo date_format($date,"d F y"); //it will echo 21 November 18
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...