大家好我真的很新的PHP,我试图从xml数组转换时间戳,但没有成功,我读了我发现的一切,但仍然可以找到你可以帮助的方式吗?
我正在使用此代码解码xml api输出
$mysongs = simplexml_load_file('http://example.com/test/xml/');
$timestamp = $mysongs->item->timestamp;
$playtime = date("Y-d-m G-i-s",$timestamp);
如果我回显$ timestamp它工作正常,$ playtime不...
试过:
echo gmdate("Y-m-d", $timestamp);
&安培;
echo date('Y-m-d H:i:s', $wra);
&安培;
echo '<timeplayed>' . date('Y-m-d G:i:s', $mysongs->item->timestamp) . '</timeplayed>';
仍然没有运气..时间没有显示..如果我使用这个例子
echo '<timeplayed>' . date('Y-m-d G:i:s', (1365532902)) . '</timeplayed>';
它运作正常..我在这里做错了什么?
最后我发现它..它需要将$ timestamp作为整数投射到日期,以便在euxneks消化时正确解码..
所以正确的代码应该是
$timestamp = intVal ($mysongs->item->timestamp);
然后
$playtime = date("Y-d-m H-i-s",($timestamp));
&安培;终于echo ($playtime);
,它运作正常......
感谢大家解决了您的回复问题
答案 0 :(得分:0)
你可能需要将结果转换为整数(因为我使用了simplexml已经有一段时间了,但我很确定它不会自动输入收到的值):
此外,strtotime也可能有效:)
答案 1 :(得分:0)
你肯定缺少strtotime
函数,这是一个例子:
$str = '04/09/2013';
$date = date('Y-m-d H:i:s',strtotime($str));
echo $date;
这将输出:
2013-04-09 00:00:00
更新了
由于使用了strtotime,所以使用:
$date = date('Y-m-d H:i:s', ($timestamp));