我创建了一个函数,它返回的日期如下: 2016-07-15T10:10:52的 031563 00:00
没关系,但问题是数字为毫秒。如何删除最后3位数字?我只需要3个。
private function getFormattedDate($time = 'now'){
$t = microtime(true);
$micro = sprintf("%06d",($t - floor($t)) * 1000000);
$d = new DateTime( date('Y-m-d H:i:s.'.$micro, $t) );
$d->modify($time);
return $d->format('Y-m-d\Th:i:s.uP'); // note at point on "u"
}
答案 0 :(得分:3)
u
修饰符将始终返回六位数。 Parameterize directories used by dotnet-ef.:
微秒(在PHP 5.2.2中添加)。请注意,date()将始终生成000000,因为它采用整数参数,而DateTime :: format()确实支持微秒,如果使用微秒创建DateTime。
如果您不想这样,则必须手动插入所需的格式,例如
return $d->format('Y-m-d\Th:i:s.') . substr($micro, 0, 3) . $d->format('P');
然后输出类似2016-07-15T12:29:30.546+02:00