PHP имеет функцию strtotime($string)
, которая будет принимать строки даты / времени в различных форматах (включая формат даты и времени MySQL) и преобразовывать их в целое число метки времени Unix (количество секунд, прошедшее с 1970-01-0100:00:00 UTC ).Затем вы можете использовать date('F j, Y', $time)
для преобразования этого целого числа в любое желаемое строковое представление, используя найденные токены здесь
Двумя дополнительными соображениями являются локализация и осведомленность о часовом поясе.Я не буду вдаваться в первый, так как кажется, что он вам не нужен, но там, где важен часовой пояс, может быть проще использовать PHP-классы DateTime, которые вы можете прочитать о [здесь] .Вот пример:
<?php
// for example, if you're storing times in UTC in your DB
$dbTimezone = new DateTimeZone('UTC');
// we'll use this for displaying times in the user's timezone.
// for example, my timezone:
$displayTimezone = new DateTimeZone('America/Toronto');
foreach ($articles as $article):
// Create a timezone-aware DateTime object from your article's creation date
$dt = new DateTime($article['Article']['create'], $dbTimezone);
$dt->setTimezone($displayTimezone);
echo $dt->format('F j, Y');
endforeach;