我想检查用户提交的日期时间是否与我的日期时间格式相同
DateTime::createFromFormat($format, $date)
在我将时间格式从Y-m-d H:i:s
更改为Y-m-d\TH:i:s.ZP
之前,它工作正常
我想得到这样的时间日期2011-11-09T17:11:57.430 + 05:00
我应该为我的功能提供什么格式?我使用的格式错了吗?
答案 0 :(得分:5)
你快到了。您使用了'Z',你应该有一个'u'微秒,所以你的代码应该是这样的: -
$dateStr = '2011-11-09T17:11:57.430+05:00';
$date = \DateTime::createFromFormat('Y-m-d\TH:i:s.uP', $dateStr);
var_dump($date);
输出: -
object(DateTime)[1]
public 'date' => string '2011-11-09 17:11:57' (length=19)
public 'timezone_type' => int 1
public 'timezone' => string '+05:00' (length=6)
DateTime::createFromFormat()
接受的格式字符串与date()
接受的格式字符串相同。
答案 1 :(得分:-1)
这是一个ISO 8601日期,您只需使用$format = 'c'
即可。