X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=profileinfo.php;h=3117db31fd2d20a3770ec71a76f6bd340ea0d6f6;hb=d35d8dd82e31f82d75844b61a4c2036b9c6919b4;hp=9ef91a44116c4a06944cddcb56576cbe23a59db7;hpb=f3a89bb4d0048756e9f7fb5765cf0d5c39db2943;p=lhc%2Fweb%2Fwiklou.git diff --git a/profileinfo.php b/profileinfo.php index 9ef91a4411..3117db31fd 100644 --- a/profileinfo.php +++ b/profileinfo.php @@ -1,35 +1,43 @@ - Profiling data @@ -81,7 +89,9 @@ class profile_point { var $time; var $children; - function profile_point( $name, $count, $time, $memory ) { + static $totaltime, $totalmemory, $totalcount; + + function __construct( $name, $count, $time, $memory ) { $this->name = $name; $this->count = $count; $this->time = $time; @@ -93,45 +103,46 @@ class profile_point { $this->children[] = $child; } - function display($indent = 0.0) { - global $expand, $totaltime, $totalmemory, $totalcount; + function display( $expand, $indent = 0.0 ) { usort( $this->children, 'compare_point' ); - $extet = ''; - if ( isset( $expand[$this->name()] ) ) - $ex = true; - else $ex = false; + $ex = isset( $expand[$this->name()] ); + if ( !$ex ) { if ( count( $this->children ) ) { - $url = makeurl( false, false, $expand + array( $this->name() => true ) ); + $url = getEscapedProfileUrl( false, false, $expand + array( $this->name() => true ) ); $extet = " [+]"; - } else $extet = ''; + } else { + $extet = ''; + } } else { $e = array(); - foreach ( $expand as $name => $ep ) - if ( $name != $this->name() ) + foreach ( $expand as $name => $ep ) { + if ( $name != $this->name() ) { $e += array( $name => $ep ); + } + } - $extet = " [–]"; + $extet = " [–]"; } ?> name() ) . $extet ?> - time() / $totaltime * 100 ) ?> - memory() / $totalmemory * 100 ) ?> + time() / self::$totaltime * 100 ) ?> + memory() / self::$totalmemory * 100 ) ?> count() ?> callsPerRequest() ), 2 ) ?> timePerCall() ), 2 ) ?> memoryPerCall() / 1024 ), 2 ) ?> - time() / $totalcount ), 2 ) ?> - memory() / $totalcount / 1024 ), 2 ) ?> + time() / self::$totalcount ), 2 ) ?> + memory() / self::$totalcount / 1024 ), 2 ) ?> children as $child ) { - $child->display( $indent + 2 ); + $child->display( $expand, $indent + 2 ); } } } @@ -161,18 +172,15 @@ class profile_point { } function callsPerRequest() { - global $totalcount; - return @( $this->count / $totalcount ); + return @( $this->count / self::$totalcount ); } function timePerRequest() { - global $totalcount; - return @( $this->time / $totalcount ); + return @( $this->time / self::$totalcount ); } function memoryPerRequest() { - global $totalcount; - return @( $this->memory / $totalcount ); + return @( $this->memory / self::$totalcount ); } function fmttime() { @@ -231,31 +239,35 @@ else - - - - - - - - - + + + + + + + + + $_filter ? $_filter : $filter, + 'sort' => $_sort ? $_sort : $sort, + 'expand' => implode( ',', array_keys( $_expand ) ) + ) ) + ); } $points = array(); @@ -266,9 +278,9 @@ $last = false; foreach( $res as $o ) { $next = new profile_point( $o->pf_name, $o->pf_count, $o->pf_time, $o->pf_memory ); if( $next->name() == '-total' ) { - $totaltime = $next->time(); - $totalcount = $next->count(); - $totalmemory = $next->memory(); + profile_point::$totaltime = $next->time(); + profile_point::$totalcount = $next->count(); + profile_point::$totalmemory = $next->memory(); } if ( $last !== false ) { if ( preg_match( "/^".preg_quote( $last->name(), "/" )."/", $next->name() ) ) { @@ -296,12 +308,12 @@ foreach ( $points as $point ) { if ( strlen( $filter ) && !strstr( $point->name(), $filter ) ) continue; - $point->display(); + $point->display( $expand ); } ?>
NameTime (%)Memory (%)CountCalls/reqms/callkb/callms/reqkb/reqNameTime (%)Memory (%)CountCalls/reqms/callkb/callms/reqkb/req
-

Total time:

-

Total memory:

+

Total time:

+

Total memory: