PHP日期格式,删除时间等

its*_*sme 20 php datetime date date-format

可能重复:
在PHP中将一种日期格式转换为另一种日期格式

从...开始:

$date = '2012-09-09 03:09:00'
Run Code Online (Sandbox Code Playgroud)

我想做两件事.

  1. 从字符串中删除时间,因此它将成为"2012-09-09".
  2. 使用服务器当前日期/时间/时区计算自此日期以来经过的年数,天数和小时数.

任何人都可以帮我解决这个问题吗?

Mih*_*rga 42

使用DateTime:

$date = '2012-09-09 03:09:00';

$createDate = new DateTime($date);

$strip = $createDate->format('Y-m-d');
var_dump($strip); // string(10) "2012-09-09"

$now = new DateTime();
$difference = $now->diff($createDate, true);
var_dump($difference);

/* object(DateInterval)#3 (8) {
  ["y"]=>
  int(0)
  ["m"]=>
  int(0)
  ["d"]=>
  int(7)
  ["h"]=>
  int(13)
  ["i"]=>
  int(4)
  ["s"]=>
  int(38)
  ["invert"]=>
  int(0)
  ["days"]=>
  int(7)
} */
Run Code Online (Sandbox Code Playgroud)


Jvd*_*erg 18

$date = '2012-09-09 03:09:00';
$dt = new DateTime($date);

echo $dt->format('Y-m-d');

$interval = $dt->diff(new DateTime());
Run Code Online (Sandbox Code Playgroud)

您可以使用适合您的间隔.见http://php.net/manual/en/class.dateinterval.php