加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP脚本……可以追溯到时间?

发布时间:2020-12-13 18:17:48 所属栏目:PHP教程 来源:网络整理
导读:不是真的,但我遇到了一个问题,即在运行这个脚本的时候曾经在一个蓝色的月亮中,我的时间导致负数.这是脚本发生的部分: public function execute(){ $time1 = microtime(); foreach($this-tables as $table) { if($this-buildQuery($table)) { if($this-submi
不是真的,但我遇到了一个问题,即在运行这个脚本的时候曾经在一个蓝色的月亮中,我的时间导致负数.这是脚本发生的部分:
public function execute()
{
    $time1 = microtime();
    foreach($this->tables as $table)
    {
        if($this->buildQuery($table))
        {
            if($this->submitQuery($table))
            {
                $time2 = microtime() - $time1;
                echo "Sync Successful({$time2}s).. $table <br /> n";
                //log
            }
        }
        else echo "No data to sync in $table";
    }    
}

正如你所怀疑的那样……从第一次减去第二次并粗略估计过程花了多长时间应该没有错.但是..如果我运行足够多次,有时结果将打印出以下内容:

Sync Successful(0.062936s).. users
Sync Successful(-0.86901s).. profile
Sync Successful(-0.798774s).. groups
Sync Successful(-0.718851s).. phonebook
Sync Successful(-0.711768s).. products
No data to sync in locations

这是非常罕见的,但这是我上一次结果的确切输出.所以我的问题是:

这怎么可能?导致“负面”,这显然不应该发生..

我该怎么做才能避免这种情况?有没有更好的方法来解决这个问题? microtime()不可靠吗?

有人能借给我1981年的DeLorean DMC-12能够达到88 mp / h吗?

您假设数据类型错误. manual page of microtime读取:

By default,microtime() returns a string in the form “msec sec” […]

因此,在实际减法发生之前,您实际上只将msec值减去strings are converted to numbers.

使用microtime(true)获取浮点值:

If get_as_float is set to TRUE,then microtime() returns a float […]

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读