1

我想像这样 strtotime dateformat - Fri Jun 15 05:38:11 +1000 2012 我该怎么做?基本上我需要对其进行strtotime,然后执行以下操作-$ago = time()-strtotime(Fri Jun 15 05:38:11 +1000 2012);然后执行此操作-

$ago = $ago / (60*60*24);
echo $ago.' days ago';

所以我需要一件事 - strtotime(Fri Jun 15 05:38:11 +1000 2012) 它将根据需要工作。

如果这种类型的日期不能是strtotime,那么我该如何编辑它,所以它可能是strtotime?

4

3 回答 3

1

试试这个(OOP 风格,有一个等效的程序):

<?php
$str = "Fri Jun 15 05:38:11 +1000 2012";

// From here: http://is2.php.net/manual/en/datetime.createfromformat.php
$datetime = DateTime::createFromFormat('D M d H:i:s T Y', $str);
$now = new DateTime();

// From here: http://is2.php.net/manual/en/datetime.diff.php
$interval = $now->diff($datetime);
echo $interval->format("%R%a days");
?>
于 2012-06-19T19:27:47.810 回答
0

DateTime::createFromFormat()方法允许您定义要解析的日期字符串的格式。

于 2012-06-19T19:22:46.757 回答
0

比较差异并使用 floor/ceil 进行舍入。

$now = time();
$then = strtotime($var);

echo floor(($now - $then) / 86400) . " days ago";
于 2012-06-19T19:23:59.587 回答