我有问题
new Datetime($year."-".$month."-".$day." ".$hour.":".$minute.":"."00")
您将如何用整数构造日期时间?
一种方法是使用DateTime
的setDate()
和setTime()
方法。
$date = date_create()->setDate($year, $month, $day)
->setTime($hour, $minute, $second);
您的语法不正确,您在$month之前缺少一个点 (.)。试试这个:
new Datetime($year."-".$month."-".$day." ".$hour.":".$minute)
http://us.php.net/manual/en/function.mktime.php
这几乎就是mktime的用途。 然后,当然,转换为日期时间,假设PHP 5.3+。
这有效
$year =2012 ; $month =4 ;$day = 26 ; $hour = 6 ; $minute =30 ; $sec = 3;
$date = sprintf("%d-%d-%d %d:%d:%d",$year,$month,$day,$hour,$minute,$sec);
$dateTime = new Datetime($date);
var_dump($dateTime);
输出
object(DateTime)[1]
public 'date' => string '2012-04-26 06:30:03' (length=19)
public 'timezone_type' => int 3
public 'timezone' => string 'Europe/Berlin' (length=13)