當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Varien_Profiler::reset方法代碼示例

本文整理匯總了PHP中Varien_Profiler::reset方法的典型用法代碼示例。如果您正苦於以下問題:PHP Varien_Profiler::reset方法的具體用法?PHP Varien_Profiler::reset怎麽用?PHP Varien_Profiler::reset使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Varien_Profiler的用法示例。


在下文中一共展示了Varien_Profiler::reset方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: startConsole

 /**
  * The main loop
  *
  * @return void
  * 
  **/
 public function startConsole()
 {
     require_once 'ShallowParser.php';
     $parser = new Boris_ShallowParser();
     $buf = '';
     $prompt = '>> ';
     // Oh so infinite
     for (;;) {
         // Read the line from the CLI. If we haven't yet terminated the current statement,
         // add an asterisk to the prompt as a little visual hint
         $line = readline($buf == '' ? $prompt : str_pad('?> ', strlen($prompt), ' ', STR_PAD_LEFT));
         // Add to the history
         if ($line == 'clear') {
             $this->clear();
             continue;
         }
         readline_add_history($line);
         if ($line === false) {
             break;
         }
         $buf .= $line;
         if ($this->profiling) {
             Varien_Profiler::reset('test');
             Varien_Profiler::start('test');
         }
         if ($this->database) {
             $res = Mage::getSingleton('core/resource')->getConnection('core_read');
             $profiler = $res->getProfiler();
             $profiler->setEnabled(true);
             $profiler->clear();
         }
         // This is some clever stuff from Boris. It parses the current command
         // and finds out what the heck is going on in there and if it's finished
         // yet.
         if ($statements = $parser->statements($buf)) {
             $buf = '';
             $fromglobalfunction = false;
             // Then try each statement
             foreach ($statements as $stmt) {
                 try {
                     // The exciting bit
                     $result = eval($stmt);
                     if ($result !== 'fromglobalfunction') {
                         $this->output($result);
                     } else {
                         $fromglobalfunction = true;
                     }
                 } catch (Exception $e) {
                     $this->out("! " . $e->getMessage(), 'red');
                     continue;
                 }
             }
             if ($this->profiling) {
                 Varien_Profiler::stop('test');
             }
             if ($this->database) {
                 if ($profiler->getEnabled()) {
                     $totalTime = $profiler->getTotalElapsedSecs();
                     $queryCount = $profiler->getTotalNumQueries();
                     $longestTime = 0;
                     $longestQuery = null;
                     if ($queryCount) {
                         foreach ($profiler->getQueryProfiles() as $query) {
                             if ($query->getElapsedSecs() > $longestTime) {
                                 $longestTime = $query->getElapsedSecs();
                                 $this->out($query->getQuery(), "yellow", null, false);
                                 $this->outTime($query->getElapsedSecs());
                             }
                         }
                     }
                 }
             }
             if ($this->profiling && !$fromglobalfunction) {
                 $this->outTime(Varien_Profiler::fetch('test'), "Duration: ");
             }
         }
     }
 }
開發者ID:ngreimel,項目名稱:magentleman,代碼行數:84,代碼來源:Console.php


注:本文中的Varien_Profiler::reset方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。