中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

php獲取目標(biāo)函數(shù)執(zhí)行時(shí)間示例

寫了一個(gè)類用來(lái)測(cè)試目標(biāo)函數(shù)的執(zhí)行時(shí)間。以下是類的定義代碼:

復(fù)制代碼 代碼如下:
<?php
/**
 * class EfficiencyTester
 * 效率測(cè)試器,測(cè)試函數(shù)的運(yùn)行時(shí)間
 * @version 1.0 2013.04.13
 * @author Kross
 */
class EfficiencyTester {   
    /**
     * var $testTimes
     * 測(cè)試的次數(shù)
     */
    private $testTimes = 1000;

    /**
     * function getTime()
     * 根據(jù)時(shí)間模式,獲取時(shí)間戳
     * @param $timeModel 時(shí)間模式,默認(rèn):微秒
     * @return int 時(shí)間戳
     */
    private function getTime($timeModel = 'MS') {
        if ($timeModel == 'MS') {
            return microtime();
        } else if ($timeModel == 'S') {
            return time();
        } else {
            return microtime();
        }
    }
    /**
     * function testOnce()
     * 測(cè)試目標(biāo)函數(shù)一次,返回運(yùn)行時(shí)間
     * @param $functionName 目標(biāo)函數(shù)名
     * @param $timeModel 時(shí)間模式,默認(rèn):微秒
     * @return double 目標(biāo)函數(shù)運(yùn)行一次的時(shí)間(很隨機(jī))
     */
    public function testOnce($functionName, $timeModel = 'MS') {       
        $startMicroTime = $this->getTime($timeModel);
        $functionName();
        $endMicroTime = $this->getTime($timeModel);

        $costMicroTime = $endMicroTime - $startMicroTime;

        return $costMicroTime;
    }
    /**
    * function test()
    * 測(cè)試目標(biāo)函數(shù)多次,返回運(yùn)行時(shí)間(平均值)
    * @param $functionName 目標(biāo)函數(shù)名
    * @param $timeModel 時(shí)間模式,默認(rèn):微秒
    * @return double 目標(biāo)函數(shù)運(yùn)行的時(shí)間
    */
    public function test($functionName, $timeModel = 'MS') {
        $totalMicroTimes = 0;
        for ($i = 1; $i <= $this->testTimes; $i++) {
            $totalMicroTimes += $this->testOnce($functionName);
        }
        return $totalMicroTimes / $this->testTimes;
    }
}
?>

以下是類的測(cè)試代碼:

復(fù)制代碼 代碼如下:
<?php
require_once('../class/EfficiencyTester.class.php');
$e = new EfficiencyTester();
echo $e->test('rand');
?>

一開(kāi)始我是直接使用 microtime() 獲取時(shí)間的,后來(lái)考慮到如果想獲得單位是秒的運(yùn)行時(shí)間,這樣寫就不夠多態(tài)了,然后我就寫了一個(gè)getTime() 的函數(shù)來(lái)獲取不同單位的時(shí)間戳,不過(guò)這樣,貌似目標(biāo)函數(shù)的運(yùn)行時(shí)間變長(zhǎng)了,可能是因?yàn)?getTime() 函數(shù)中的判斷占用了一部分時(shí)間。

php技術(shù)php獲取目標(biāo)函數(shù)執(zhí)行時(shí)間示例,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲国产高清高潮精品美女 | 国产精品一区二区视频 | 国产日韩电影 | 日本精品视频在线观看 | 久久国产精品一区二区三区 | 不卡一区二区在线观看 | 午夜免费看视频 | 特一级黄色毛片 | 精品一区二区三区中文字幕 | 久久男人 | 91久久夜色 | 精品国产一区二区三区免费 | 国产精品美女久久久久久久网站 | 精品久久香蕉国产线看观看亚洲 | 久久久久久久久久毛片 | 黄色福利 | 成年人视频在线免费观看 | 一区二区手机在线 | 亚洲黄色国产 | 国产一区999 | 在线午夜| 日韩视频精品在线 | 精品综合久久 | 久国产精品 | 91亚洲国产成人久久精品网站 | 亚洲一区在线观看视频 | 成人在线视频免费观看 | 成人午夜| 男人天堂色 | 在线成人精品视频 | 久久亚洲二区 | 精品国产乱码久久久久久丨区2区 | 久久高清亚洲 | 国产乱码久久久久久一区二区 | 日韩av免费在线电影 | 日韩一区二区三区在线播放 | 一区二区三区视频 | 中国一级特黄视频 | 国产精品视频网 | 中文字幕在线剧情 | 亚洲精品久久久蜜桃 |