3

这是我的代码:

<?
    $time = microtime();
    $len = strlen($time);
    echo $time;
    echo"<br>".$len."<br>";
    $micro;
    $i = 0;
    while ($time{$i} != " ")
    {
        $micro{i}=$time{i};
        echo $micro{i};
        $i=$i+1;
    }
?>

我得到的输出是 0000000000 (即 $micro)。在这里,我试图获得输出的微秒部分。

有什么问题吗?

4

2 回答 2

7

改为使用microtime(true)

$time = microtime(true);
$micro = $time - floor($time); // microseconds part
于 2010-10-14T05:25:47.633 回答
1

使用 $micro{$i}=$time{$i}; 而不是 $micro{i}=$time{i};

但是更好的方法来做这样的事情:

list($timestamp, $microseconds) = split(" ", microtime());

于 2010-10-14T05:37:01.580 回答