Heim  >  Artikel  >  Backend-Entwicklung  >  取得微秒时间,但是我发现位数怎么忽长忽短呢

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

WBOY
WBOYOriginal
2016-06-20 12:32:58865Durchsuche

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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn