SQL и PHP datetime ... самый прямой метод - PullRequest
0 голосов
/ 18 июня 2011

Я вытягиваю из поля даты и времени с mysql. Я хватаю это с помощью PHP, и я повторяю это. Мне нужно изменить формат, чтобы он читался человеком. В идеале я хотел бы сделать это на PHP, поэтому мне нужно всего лишь изменить один файл PHP. Если я сделаю это в SQL, это повлияет на несколько файлов.

Прямо сейчас вывод выглядит так: 2011-05-30 21:28:37. Мне нужно, чтобы это выглядело так: 05/30/2011.

Вот мой код:

$query = "SELECT `fileName`, 
                 `imageName`,  
                 `imageCaption`, 
                 `imageDate` 
            FROM `images` 
           WHERE `gallery` = '$gallery' 
             AND `imageOrder` = '$featuredImage'";

$result = mysql_query($query);
$num = mysql_numrows($result);

$i = 0;
while ($i < $num) {
  $fileName = mysql_result($result,$i,"fileName");
  $order = mysql_result($result,$i,"imageOrder");
  $imageName = mysql_result($result,$i,"imageName");
  $imageCaption = mysql_result($result,$i,"imageCaption");
  $date = mysql_result($result,$i,"imageDate");

  echo "$date";

  $i++;
}

Ответы [ 3 ]

1 голос
/ 18 июня 2011

Вам необходимо сначала преобразовать поле даты и времени в метку времени, а затем передать его в функцию даты PHP, чтобы отформатировать его.

$date_to_time = strtotime(mysql_result($result,$i,"imageDate"));
$date = date('d/m/Y',$date_to_time);
1 голос
/ 18 июня 2011

Это должно работать для вас:

$date = mysql_result($result,$i,"imageDate");
$objDate = DateTime::createFromFormat('Y-m-d H:i:s', $date);
echo $objDate->format('m/d/Y');
1 голос
/ 18 июня 2011
$time = strtotime(mysql_result($result,$i,"imageDate"));
$display_date = date('d/m/Y', $time);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...