code: public function end()
      {
          \unregister_tick_function(array($this, 'tickFunction'));
          while ($this->funcStack) {
              $this->popStack();
          }
          // sort by totalTime descending
          \uasort($this->data, function ($valA, $valB) {
              return ($valA['totalTime'] < $valB['totalTime']) ? 1 : -1;
          });
          $data =  \array_map(function ($row) {
              $row['totalTime'] = \round($row['totalTime'], 6);
              $row['ownTime'] = \round($row['ownTime'], 6);
              return $row;
          }, $this->data);
          $this->data = array();
          $this->funcStack = array();
          $this->isProfiling = false;
          $this->rootStack = array();
          return $data;
      }
docs: End profiling and return data
  
  @return array profile data