3 * {$project_id}_Plugin_Filter_ExecutionTime.php
6 * @package {$project_id}
11 * filter plugin implementation for measuring execution time.
15 * @package {$project_id}
17 class {$project_id}_Plugin_Filter_ExecutionTime extends Ethna_Plugin_Filter
24 * @var int Start time.
32 * filter before first processing.
38 $stime = explode(' ', microtime());
39 $stime = $stime[1] + $stime[0];
40 $this->stime = $stime;
44 * filter BEFORE executing action.
47 * @param string $action_name Action name.
48 * @return string null: normal.
49 * string: if you return string, it will be interpreted
50 * as Action name which will be executed immediately.
52 function preActionFilter($action_name)
58 * filter AFTER executing action.
61 * @param string $action_name executed Action name.
62 * @param string $forward_name return value from executed Action.
63 * @return string null: normal.
64 * string: if you return string, it will be interpreted
67 function postActionFilter($action_name, $forward_name)
73 * filter which will be executed at the end.
79 $etime = explode(' ', microtime());
80 $etime = $etime[1] + $etime[0];
81 $time = round(($etime - $this->stime), 4);
83 print "\n<!-- page was processed in $time seconds -->\n";