yii\db\DataReader::getRowCount PHP Method

getRowCount() public method

Note, most DBMS may not give a meaningful count. In this case, use "SELECT COUNT(*) FROM tableName" to obtain the number of rows.
public getRowCount ( ) : integer
return integer number of rows contained in the result.
    public function getRowCount()
    {
        return $this->_statement->rowCount();
    }

Usage Example

コード例 #1
0
ファイル: RendererStream.php プロジェクト: netis-pl/yii2-crud
 /**
  * Renders next batch of rows.
  * @param integer $rowsNumber set to -1 to render all rows
  * @return string
  */
 public function renderChunk($rowsNumber)
 {
     /** @var ActiveDataProvider $dataProvider */
     $dataProvider = $this->grid->dataProvider;
     /** @var \yii\db\ActiveQuery $query */
     $query = $dataProvider->query;
     $result = '';
     if ($this->rowNumber === 0) {
         $result .= $this->renderHeader();
     }
     $rowCount = $this->dataReader->getRowCount();
     for ($i = 0; $i < $rowsNumber || $rowsNumber === -1; $i++) {
         $row = $this->dataReader->read();
         if ($row === false) {
             $this->dataReader = null;
             $result .= $this->renderFooter();
             break;
         }
         $models = $query->populate([$row]);
         $result .= $this->renderRow(reset($models), $this->rowNumber++, $rowCount);
     }
     return $result;
 }