Ejemplo n.º 1
0
$timer->start();
usleep(500000);
$timer->stop();
print 'Unnamed time result: ' . $timer() . PHP_EOL;
$timer->start('one');
usleep(100000);
$timer->stop('one');
print $timer;
// Sum of gaps
$timer->start('gap');
usleep(100000);
$timer->stop('gap');
$timer->start('gap');
usleep(200000);
$timer->stop('gap');
$timer->start('gap');
usleep(300000);
$timer->stop('gap');
// Get sum of all gaps
print 'Get sum of all gaps: ' . $timer('gap') . PHP_EOL;
// returns ~ 0.6 (sec)
$timer->start('file');
$timer->start('mysql.sql.query.response.parsing', true);
$timer->start('postgres.sql.query.response.parsing');
usleep(300000);
$timer->stopTree('mysql.sql.query');
usleep(200000);
$timer->start('file.read');
usleep(400000);
$timer->stopAll();
print $timer;
Ejemplo n.º 2
0
 public function init()
 {
     if (!$this->enabled) {
         return;
     }
     if ($this->fixScriptName) {
         $scriptName = php_sapi_name() === 'cli' ? implode(' ', $_SERVER['argv']) : '/' . \Yii::app()->urlManager->parseUrl(\Yii::app()->request);
         $this->setScriptName($scriptName);
     }
     $eventHandler = new EventHandler();
     $eventHandler->attach(\Yii::app(), 'request', 'onBeginRequest', 'onEndRequest');
     foreach ($this->profileEvents as $event) {
         if (is_string($event[0])) {
             $event[0] = \Yii::app()->getComponent($event[0]);
         }
         if (!$event[0] instanceof \CComponent) {
             throw new \InvalidArgumentException(var_export($event[0], true) . ' is not string or instance of CComponent');
         }
         call_user_func_array([$eventHandler, 'attach'], $event);
     }
     \Yii::app()->attachEventHandler('onEndRequest', function () {
         Timer::stopAll();
     });
 }