我有一个运行在unix上的php脚本,但我需要它在windows上运行。
setTimestamp只是unix,我需要等效的窗口。
http://php.net/manual/en/datetime.settimestamp.php
示例:
foreach($config['feeds'] as $feed){
// in case we didn't save a last checked date, set it to sometime in the 70's
$last_date = new DateTime();
$last_date->setTimestamp(0);
$last_date_save = 0;
// the feeds are identified in the cache file by the hash of their url.
$feed_hash = sha1($feed['url']);
if(isset($stats[$feed_hash]['lastPubDate'])){
if($config['debug'] > 0) echo "feed had lastpubdate\n";
$last_date = new DateTime();
$last_date->setTimestamp($stats[$feed_hash]['lastPubDate']);
}
}
有什么想法吗?
答案 0 :(得分:2)
settimestamp
不仅限Unix。
它无法正常工作的原因是因为它的可用性是(PHP 5> = 5.3.0)而你的Windows机器可能安装了旧版本的PHP。
您可以使用可用的类constructor
(PHP 5> = 5.2.0),如下所示:
$last_date = new DateTime('@0'); // change construction line like this
//$last_date->setTimestamp(0); // <-- remove this line
答案 1 :(得分:0)
setTimestamp仅为unix
这是一个误解。术语“Unix时间戳”用于计算自1970年1月1日以来的秒数的时间戳格式。它只是一个名称,在技术上并非特定于Unix,并且可以在Windows上以相同的方式工作而没有问题。
维基百科:Unix Time