我想从我的数据库中读出一些时间并删除所有字段(如时间所示)比现在更早的条目。
这是我目前的代码:
//$eSonderPreis->R_GLTBISDATUM = 30.12.1899
$bisDatum = date_create_from_format('Y-m-d H:i:s', $eSonderPreis->R_GLTBISDATUM);
//var_dump returns: [...] string(19) "1899-12-30 00:00:00" [...]
var_dump(date_timestamp_get($bisDatum));
//var_dump returns: boolean false
echo " - ";
var_dump($thetime);
//var_dump returns: current time as int
if(date_timestamp_get($bisDatum) < $thetime)
{
unset($aData[$key]);
}
date_timestamp_get返回false,表示失败(根据文档)。为什么会这样?
答案 0 :(得分:1)
如果日期早于Unix纪元时间(01/01/1970),date_timestamp_get()
将返回false。
您可以使用格式(“U”)来获取时间:
echo $bisDatum->format("U");
这里有一些相关信息:http://php.net/manual/en/datetime.gettimestamp.php
专门针对您的代码:
if($bisDatum->format("U") < $thetime)
{
unset($aData[$key]);
}