original_string: public function output($rows)
      {
          if (!is_array($rows) || count($rows) === 0) {
              return;
          }
  
          $config = $this->getConfig();
          $widths = $this->_calculateWidths($rows);
  
          $this->_rowSeparator($widths);
          if ($config['headers'] === true) {
              $this->_render(array_shift($rows), $widths, ['style' => $config['headerStyle']]);
              $this->_rowSeparator($widths);
          }
  
          if (!$rows) {
              return;
          }
  
          foreach ($rows as $line) {
              $this->_render($line, $widths);
              if ($config['rowSeparator'] === true) {
                  $this->_rowSeparator($widths);
              }
          }
          if ($config['rowSeparator'] !== true) {
              $this->_rowSeparator($widths);
          }
      }
code: public function output($rows)
      {
          if (!is_array($rows) || count($rows) === 0) {
              return;
          }
  
          $config = $this->getConfig();
          $widths = $this->_calculateWidths($rows);
  
          $this->_rowSeparator($widths);
          if ($config['headers'] === true) {
              $this->_render(array_shift($rows), $widths, ['style' => $config['headerStyle']]);
              $this->_rowSeparator($widths);
          }
  
          if (!$rows) {
              return;
          }
  
          foreach ($rows as $line) {
              $this->_render($line, $widths);
              if ($config['rowSeparator'] === true) {
                  $this->_rowSeparator($widths);
              }
          }
          if ($config['rowSeparator'] !== true) {
              $this->_rowSeparator($widths);
          }
      }
code_tokens: public function output ( $ rows ) { if ( ! is_array ( $ rows ) || count ( $ rows ) === 0 ) { return ; } $ config = $ this -> getConfig ( ) ; $ widths = $ this -> _calculateWidths ( $ rows ) ; $ this -> _rowSeparator ( $ widths ) ; if ( $ config [ 'headers' ] === true ) { $ this -> _render ( array_shift ( $ rows ) , $ widths , [ 'style' => $ config [ 'headerStyle' ] ] ) ; $ this -> _rowSeparator ( $ widths ) ; } if ( ! $ rows ) { return ; } foreach ( $ rows as $ line ) { $ this -> _render ( $ line , $ widths ) ; if ( $ config [ 'rowSeparator' ] === true ) { $ this -> _rowSeparator ( $ widths ) ; } } if ( $ config [ 'rowSeparator' ] !== true ) { $ this -> _rowSeparator ( $ widths ) ; } }
docstring: Output a table.
  
  Data will be output based on the order of the values
  in the array. The keys will not be used to align data.
  
  @param array $rows The data to render out.
  @return void
docstring_tokens: Output a table .