function compare_point(profile_point $a, profile_point $b) { global $sort; switch ($sort) { case "name": return strcmp($a->name(), $b->name()); case "time": return $a->time() > $b->time() ? -1 : 1; case "memory": return $a->memory() > $b->memory() ? -1 : 1; case "count": return $a->count() > $b->count() ? -1 : 1; case "time_per_call": return $a->timePerCall() > $b->timePerCall() ? -1 : 1; case "memory_per_call": return $a->memoryPerCall() > $b->memoryPerCall() ? -1 : 1; case "calls_per_req": return $a->callsPerRequest() > $b->callsPerRequest() ? -1 : 1; case "time_per_req": return $a->timePerRequest() > $b->timePerRequest() ? -1 : 1; case "memory_per_req": return $a->memoryPerRequest() > $b->memoryPerRequest() ? -1 : 1; } }
function compare_point(profile_point $a, profile_point $b) { // @codingStandardsIgnoreStart global $sort; // @codingStandardsIgnoreEnd switch ($sort) { case 'name': return strcmp($a->name(), $b->name()); case 'time': return $a->time() > $b->time() ? -1 : 1; case 'memory': return $a->memory() > $b->memory() ? -1 : 1; case 'count': return $a->count() > $b->count() ? -1 : 1; case 'time_per_call': return $a->timePerCall() > $b->timePerCall() ? -1 : 1; case 'memory_per_call': return $a->memoryPerCall() > $b->memoryPerCall() ? -1 : 1; case 'calls_per_req': return $a->callsPerRequest() > $b->callsPerRequest() ? -1 : 1; case 'time_per_req': return $a->timePerRequest() > $b->timePerRequest() ? -1 : 1; case 'memory_per_req': return $a->memoryPerRequest() > $b->memoryPerRequest() ? -1 : 1; } }
} if ($last !== false) { if (preg_match("/^" . preg_quote($last->name(), "/") . "/", $next->name())) { $last->add_child($next); continue; } } $last = $next; if (preg_match("/^query: /", $next->name())) { $sqltotal += $next->time(); $queries[] = $next; } else { $points[] = $next; } } $s = new profile_point("SQL Queries", 0, $sqltotal); foreach ($queries as $q) { $s->add_child($q); } $points[] = $s; usort($points, "compare_point"); foreach ($points as $point) { if (strlen($filter) && !strstr($point->name(), $filter)) { continue; } $point->display(); } ?> </table> <p>Total time: <tt><?php