午夜国产狂喷潮在线观看|国产AⅤ精品一区二区久久|中文字幕AV中文字幕|国产看片高清在线

    php實現(xiàn)的Timer頁面運行時間監(jiān)測類
    來源:易賢網(wǎng) 閱讀:622 次 日期:2014-10-16 16:34:31
    溫馨提示:易賢網(wǎng)小編為您整理了“php實現(xiàn)的Timer頁面運行時間監(jiān)測類”,方便廣大網(wǎng)友查閱!

    本文實例講述了php實現(xiàn)的Timer頁面運行時間監(jiān)測類及其用法,是一款非常實用的PHP類文件。分享給大家供大家參考。具體分析如下:

    該php Timer頁面運行時間監(jiān)測類,可按不同key監(jiān)測不同的運行時間。

    Timer.class.php類文件如下:

    <?php

    /** Timer class, 計算頁面運行時間,可按不同key計算不同的運行時間

    * Date: 2014-02-28

    * Author: fdipzone

    * Ver: 1.0

    *

    * Func:

    * public start 記錄開始時間

    * public end 記錄結(jié)束時間

    * public getTime 計算運行時間

    * pulbic printTime 輸出運行時間

    * private getKey 獲取key

    * private getMicrotime 獲取microtime

    */

    class Timer{ // class start

    private $_start = array();

    private $_end = array();

    private $_default_key = 'Timer';

    private $_prefix = 'Timer_';

    /** 記錄開始時間

    * @param String $key 標記

    */

    public function start($key=''){

    $flag = $this->getKey($key);

    $this->_start[$flag] = $this->getMicrotime();

    }

    /** 記錄結(jié)束時間

    * @param String $key 標記

    */

    public function end($key=''){

    $flag = $this->getKey($key);

    $this->_end[$flag] = $this->getMicrotime();

    }

    /** 計算運行時間

    * @param String $key 標記

    * @return float

    */

    public function getTime($key=''){

    $flag = $this->getKey($key);

    if(isset($this->_end[$flag]) && isset($this->_start[$flag])){

    return (float)($this->_end[$flag] - $this->_start[$flag]);

    }else{

    return 0;

    }

    }

    /** 輸出頁面運行時間

    * @param String $key 標記

    * @return String

    */

    public function printTime($key=''){

    printf("%srun time %f msrn", $key==''? $key : $key.' ', $this->getTime($key)*1000);

    }

    /** 獲取key

    * @param String $key 標記

    * @return String

    */

    private function getKey($key=''){

    if($key==''){

    return $this->_default_key;

    }else{

    return $this->_prefix.$key;

    }

    }

    /** 獲取microtime

    */

    private function getMicrotime(){

    list($usec, $sec) = explode(' ', microtime());

    return (float)$usec + (float)$sec;

    }

    } // class end

    ?>

     

     

    demo示例代碼如下:

    <?php

    require 'Timer.class.php';

    $timer = new Timer();

    $timer->start();

    $timer->start('program1');

    usleep(mt_rand(100000,500000));

    $timer->end('program1');

    $timer->printTime('program1');

    $timer->start('program2');

    usleep(mt_rand(100000,500000));

    $timer->end('program2');

    $timer->printTime('program2');

    $timer->end();

    $timer->printTime();

    ?>

    demo運行輸出:

    program1 run time 163.285971 ms

    program2 run time 100.347042 ms

    run time 264.035940 ms

    希望本文所述對大家的PHP程序設計有所幫助。

    更多信息請查看IT技術(shù)專欄

    更多信息請查看網(wǎng)絡編程
    易賢網(wǎng)手機網(wǎng)站地址:php實現(xiàn)的Timer頁面運行時間監(jiān)測類

    2025國考·省考課程試聽報名

    • 報班類型
    • 姓名
    • 手機號
    • 驗證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)