То, что я хочу получить, очень похоже на time()
, но должно быть точным в ms:
2010-11-15 21:21:00:987
Возможно ли это в PHP?
function udate($format, $utimestamp = null) { if (is_null($utimestamp)) $utimestamp = microtime(true); $timestamp = floor($utimestamp); $milliseconds = round(($utimestamp - $timestamp) * 1000000); return date(preg_replace('`(?<!\\\\)u`', $milliseconds, $format), $timestamp); } echo udate('Ymd H:i:s:u'); // 2010-11-15 21:21:00:987
Используйте microtime и конвертируйте его в миллисекунды:
$millitime = round(microtime(true) * 1000);
Используйте microtime()
.
См. Страницу руководства здесь: http://php.net/manual/en/function.microtime.php
[EDIT] Чтобы получить результат в год / месяц / день / час / минуты / секунды / мс по запросу:
Попробуйте что-то вроде этого:
list($usec, $sec) = explode(" ", microtime()); $output = date('Y/m/d H:i:s',$sec). " /" . $usec;
Опять же, см. Страницу руководства для получения дополнительной информации о том, как работает microtime()
.
Это мой путь
list($usec, $sec) = explode(" ", microtime()); $time = date("Ymd H:i:s:",$sec).intval(round($usec*1000)); echo $time;
Взгляните на функцию microtime php.