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 读取:
因此,在实际减法发生之前,您实际上只将msec值减去strings are converted to numbers. 使用microtime(true)获取浮点值:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |