function StatementPrefetch::getStatement

Same name in other branches
  1. 9 core/lib/Drupal/Core/Database/StatementPrefetch.php \Drupal\Core\Database\StatementPrefetch::getStatement()
  2. 10 core/lib/Drupal/Core/Database/StatementPrefetch.php \Drupal\Core\Database\StatementPrefetch::getStatement()

Grab a PDOStatement object from a given query and its arguments.

Some drivers (including SQLite) will need to perform some preparation themselves to get the statement right.

Parameters

$query: The query.

array|null $args: An array of arguments. This can be NULL.

Return value

\PDOStatement A PDOStatement object.

1 call to StatementPrefetch::getStatement()
StatementPrefetch::execute in core/lib/Drupal/Core/Database/StatementPrefetch.php
Executes a prepared statement
1 method overrides StatementPrefetch::getStatement()
Statement::getStatement in core/lib/Drupal/Core/Database/Driver/sqlite/Statement.php
The PDO SQLite layer doesn't replace numeric placeholders in queries correctly, and this makes numeric expressions (such as COUNT(*) >= :count) fail. We replace numeric placeholders in the query ourselves to work around this bug.

File

core/lib/Drupal/Core/Database/StatementPrefetch.php, line 223

Class

StatementPrefetch
An implementation of StatementInterface that prefetches all data.

Namespace

Drupal\Core\Database

Code

protected function getStatement($query, &$args = []) {
    return $this->dbh
        ->prepare($query);
}

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