• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    有一個類可以統計腳本執行時間

    發布: 2007-7-14 19:53 | 作者: 佚名    | 來源: 網絡轉載     | 查看: 10次 | 進入軟件測試論壇討論

    領測軟件測試網 <?php

    // class PHP_timer開始
    class PHP_timer {

        // 用來收集腳本執行過程中的信息
        var $points = array();
        
        // 在腳本的開始處調用這個函數
        function start() {
            // 請看后面的addmarker函數
            $this->addmarker("Start");
        }
        // end function start()

        // 在腳本的結束處調用這個函數
        function stop() {
            // 請看后面的addmarker函數
            $this->addmarker("Stop");
        }
        // end function stop()

        // 這個函數用來在腳本執行時增加一個標記
        // 需要一個用來描述的名字
        function addmarker($name) {
            // 調用 jointime() 函數并將microtime() 的返回值傳遞過去
            $markertime = $this->jointime(microtime());
            // $ae 得到當前數組的大小,也就是當前的插入位置
            // currently in the $points array
            $ae = count($this->points);
            // 在數組中存儲timestamp 和說明
            $this->points[$ae][0] = $markertime;
            $this->points[$ae][1] = $name;
        }
        // end function addmarker()

        // 這個函數會處理從microtime() 返回的字串
        function jointime($mtime) {
            // 分解字串
            $timeparts = explode(" ",$mtime);
            // 連接兩個字串,并去除小數部分的0
            $finaltime = $timeparts[1].substr($timeparts[0],1);
            // 返回連接后的字串
            return $finaltime;
        }
        // end function jointime()
        
        // 這個函數簡單的顯示從開始到結束所需要的時間
        function showtime() {
            echo bcsub($this->points[count($this->points)-1][0],$this->points[0][0],6);
        }
        // end function showtime()
        
        // 這個函數顯示所有的在腳本運行過程中收集到的信息
        function debug() {
            echo "Script execution debug information:";
            echo "<table border=0 cellspacing=5 cellpadding=5>\n";
            // 這個表格有3列 Marker name, Timestamp, difference
            echo "<tr><td><b>Marker</b></td><td><b>Time</b></td><td><b>Diff</b></td></tr>\n";
            // 第一行是沒有運行時間差的
            echo "<tr>\n";
            echo "<td>".$this->points[0][1]."</td>";
            echo "<td>".$this->points[0][0]."</td>";
            echo "<td>-</td>\n";
            echo "</tr>\n";
            // 從數組的元素1開始循環顯示,0已經在第一行顯示過了
            for ($i = 1; $i < count($this->points);$i++) {
                echo "<tr>\n";
                echo "<td>".$this->points[$i][1]."</td>";
                echo "<td>".$this->points[$i][0]."</td>";
                echo "<td>";
                // 顯示上下兩行的時間差
                echo bcsub($this->points[$i][0],$this->points[$i-1][0],6);
                echo "</td>";
                echo "</tr>\n";
            }
            echo "</table>";
        }
        // end function debug()
    }
    // end class PHP_timer

    ?>

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>