Пример #1
0
 /**
  * @param string $statement
  * @return mixed
  */
 public function query($statement)
 {
     # Execute
     $start = microtime(true);
     $result = call_user_func_array('parent::query', func_get_args());
     $time = microtime(true) - $start;
     # Explain
     $explain = new Explain($this, $statement);
     # Log
     if (!preg_match('/^\\s*(EXPLAIN)\\s+/i', $statement)) {
         $this->logger->info('query', array('queryString' => $statement, 'parameters' => array(), 'time' => $time, 'explain' => $explain->getResult(), 'backtrace' => debug_backtrace()));
     }
     # Return
     return $result;
 }
Пример #2
0
 /**
  * @param array $parameters
  */
 public function execute($parameters = array())
 {
     # Execute
     $start = microtime(true);
     $result = $this->sth->execute($parameters);
     $time = microtime(true) - $start;
     # Explain
     $explain = new Explain($this->pdo, $this->sth->queryString, $parameters);
     # Log
     if (!preg_match('/^\\s*(EXPLAIN)\\s+/i', $this->sth->queryString)) {
         $this->logger->info('prepare', array('queryString' => $this->sth->queryString, 'parameters' => $parameters, 'time' => $time, 'explain' => $explain->getResult(), 'backtrace' => debug_backtrace()));
     }
     # Return
     return $result;
 }