Heim > Backend-Entwicklung > PHP-Tutorial > php统计时间和内存使用情况示例分享_PHP

php统计时间和内存使用情况示例分享_PHP

WBOY
Freigeben: 2016-06-01 11:55:36
Original
961 Leute haben es durchsucht

复制代码 代码如下:
/**
 * 记录和统计时间(微秒)和内存使用情况
 * 使用方法:
 * <br> * G('begin'); // 记录开始标记位<br> * // ... 区间运行代码<br> * G('end'); // 记录结束标签位<br> * echo G('begin','end',6); // 统计区间运行时间 精确到小数后6位<br> * echo G('begin','end','m'); // 统计区间内存使用情况<br> * 如果end标记位没有定义,则会自动以当前作为标记位<br> * 其中统计内存使用需要 MEMORY_LIMIT_ON 常量为true才有效<br> *
 * @param string $start 开始标签
 * @param string $end 结束标签
 * @param integer|string $dec 小数位或者m
 * @return mixed
 */
function G($start,$end='',$dec=4) {
    static $_info       =   array();
    static $_mem        =   array();
    if(is_float($end)) { // 记录时间
        $_info[$start]  =   $end;
    }elseif(!empty($end)){ // 统计时间和内存使用
        if(!isset($_info[$end])) $_info[$end]       =  microtime(TRUE);
        if(MEMORY_LIMIT_ON && $dec=='m'){
            if(!isset($_mem[$end])) $_mem[$end]     =  memory_get_usage();
            return number_format(($_mem[$end]-$_mem[$start])/1024);         
        }else{
            return number_format(($_info[$end]-$_info[$start]),$dec);
        }      

    }else{ // 记录时间和内存使用
        $_info[$start]  =  microtime(TRUE);
        if(MEMORY_LIMIT_ON) $_mem[$start]           =  memory_get_usage();
    }
}

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage