]> scripts.mit.edu Git - autoinstalls/mediawiki.git/blob - includes/ProfilerSimpleText.php
MediaWiki 1.15.4-scripts
[autoinstalls/mediawiki.git] / includes / ProfilerSimpleText.php
1 <?php
2 /**
3  * @file
4  * @ingroup Profiler
5  */
6
7 require_once( dirname( __FILE__ ) . '/ProfilerSimple.php' );
8
9 /**
10  * The least sophisticated profiler output class possible, view your source! :)
11  *
12  * Put it to StartProfiler.php like this:
13  *
14  * require_once( dirname( __FILE__ ) . '/includes/ProfilerSimpleText.php' );
15  * $wgProfiler = new ProfilerSimpleText;
16  * $wgProfiler->visible=true;
17  *
18  * @ingroup Profiler
19  */
20 class ProfilerSimpleText extends ProfilerSimple {
21         public $visible=false; /* Show as <PRE> or <!-- ? */
22
23         function getFunctionReport() {
24                 if ($this->visible) print "<pre>";
25                         else print "<!--\n";
26                 uasort($this->mCollated,array('self','sort'));
27                 array_walk($this->mCollated,array('self','format'));
28                 if ($this->visible) print "</pre>\n";
29                         else print "-->\n";
30         }
31
32         /* dense is good */
33         static function sort($a,$b) { return $a['real']<$b['real']; /* sort descending by time elapsed */ }
34         static function format($item,$key) { printf("%3.6f %6d - %s\n",$item['real'],$item['count'], $key); }
35 }