Maison >développement back-end >tutoriel php >取得微秒时间,但是我发现位数怎么忽长忽短呢

取得微秒时间,但是我发现位数怎么忽长忽短呢

WBOY
WBOYoriginal
2016-06-20 12:32:58877parcourir

public function getmicrotime()
{
list($usec, $sec) = explode(" ",microtime());
//return ((float)$usec + (float)$sec);
return date('ymdHis').$usec *1000000;
}


我是用这个精确到微秒的时间做订单编号。但是发现有时候会少一位,是怎么回事呢。
谢谢


回复讨论(解决方案)

你只是 $usec *1000000
如果 $usec 等于 0.0012345 呢?
扩大 100万倍 不就是 12345 吗?前面并不会补 0 的 

list($usec, $sec) = explode(" ",microtime());
return date('YmdHis', $sec)  . substr($usec, 2);

把那个号码,格式化一下,确定一下多少位,不够的前面补0

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn