function StatementWrapperIterator::fetchObject

Fetches the next row and returns it as an object.

The object will be of the class specified by StatementInterface::setFetchMode() or stdClass if not specified.

phpcs:disable Drupal.Commenting @todo Uncomment new method parameters before drupal:11.0.0.

Parameters

string|null $class_name: Name of the created class.

array $constructor_arguments: Elements of this array are passed to the constructor. phpcs:enable

Return value

mixed The object of specified class or \stdClass if not specified. Returns FALSE or NULL if there is no next row.

Overrides StatementInterface::fetchObject

File

core/lib/Drupal/Core/Database/StatementWrapperIterator.php, line 238

Class

StatementWrapperIterator
StatementInterface iterator implementation.

Namespace

Drupal\Core\Database

Code

public function fetchObject(?string $class_name = NULL, array $constructor_arguments = []) {
  if ($class_name) {
    $row = $this->clientStatement
      ->fetchObject($class_name, $constructor_arguments);
  }
  else {
    $row = $this->clientStatement
      ->fetchObject();
  }
  if ($row === FALSE) {
    $this->markResultsetFetchingComplete();
    return FALSE;
  }
  $this->setResultsetCurrentRow($row);
  return $row;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.