php конвертировать временную метку в xml datetime - PullRequest
3 голосов
/ 30 января 2011

В PHP, как вы конвертируете метку времени mysql, например "1125443836" в xml / date-time, например так:

   <wp:post_date>2011-01-25 02:10:32</wp:post_date> 

UPDATE: Столбцы в MySQL хранятся как int (10).

Основываясь на примерах ниже, это то, что я пробовал с двумя примерами значений в моей базе данных Что-то не так, может быть, хеш или Unix даты хранятся в таблице MySQL?

$testSqlDateStamp = "1125443836";
echo "<BR>DateTest=".date('Y-m-d G:i:s',strtotime($testSqlDateStamp));

$testSqlDateStamp = "1125444107";
echo "<BR>DateTest=".date('Y-m-d G:i:s',strtotime($testSqlDateStamp));
echo "<BR>";

Результаты:

 DateTest=1969-12-31 18:00:00
 DateTest=1969-12-31 18:00:00

Второе обновление: работает без вызова strtotime

$testSqlDateStamp = "1125444107";
echo "<BR>DateTest=".date('Y-m-d G:i:s',$testSqlDateStamp);
$testSqlDateStamp = "1125443836";
echo "<BR>DateTest=".date('Y-m-d G:i:s',$testSqlDateStamp);

Результаты:

DateTest=2005-08-30 18:21:47
DateTest=2005-08-30 18:17:16

Ответы [ 3 ]

6 голосов
/ 29 октября 2015

'Г-м-д G: я: S' не так. По крайней мере, не в 2015 году (я понимаю, что это старый).

В php 5.2.0 класс DateTime имеет константу для этого:

echo 'XML time: ' . date( DateTime::RFC3339, time() ) . '<br>';

DateTime :: RFC3339 установлен на «Y-m-d \ TH: i: sP».

1 голос
/ 30 января 2011
date("Y-d-m G-i-s",$time); 

Это должно сделать это.

http://php.net/manual/en/function.date.php

РЕДАКТИРОВАТЬ: это не будет работать для отметок времени mySQL, они должны быть преобразованы в отметки времени unix через strtotime() info: PHP: strtotime - Руководство .

0 голосов
/ 30 января 2011
<?php echo '<wp:post_date>' . date('Y-m-d G:i:s',strtotime($yourMysqlDateStampVar)) . '</wp:post_date>';
...