0

我存储了一些error_log日期作为他们的名字。像20120827.txt

现在我写了一些 php 脚本来查看error_log.

我需要做一些判断:

if(file_exists(date("Ymd").'.txt')){ 
   $html = file_get_contents(date("Ymd").'.txt');
}else{
   $html = file_get_contents((date("Ymd")-1).'.txt');//load yesterday's `error_log`.
}

但这不适合约会之类的20120801.txt,怎么办date("Ymd")-1

我试过date("Ymd", (strtotime($date) . " -1 day"));// return:19700101

4

4 回答 4

5

如果你想要昨天的日期,你可以做

date("Ymd", time() - 3600*24);

或者您可以使用该DateTime对象:

$date = new DateTime();
$date->modify("-1 day");
echo $date->format("Ymd");
于 2012-08-27T17:31:55.440 回答
2

您可以使用 PHPmktime获得非常精确的日期:

date('Ymd', mktime(0, 0, 0, date('m'), date('d') - 1, date('Y')));
于 2012-08-27T17:33:09.343 回答
2

试试这个......最简单的一个......

date('Ymd',strtotime( "yesterday" ));
于 2012-08-27T17:36:25.530 回答
0

你需要strtotime像这样使用:

date('Ymd', strtotime('-1 day'));

这是带有输出的粘贴: http: //codepad.org/iD7M9VN7

于 2012-08-27T17:34:56.193 回答