function Query::__toString
Same name in this branch
- 11.1.x core/lib/Drupal/Core/Database/Query/Query.php \Drupal\Core\Database\Query\Query::__toString()
Implements the magic __toString method.
File
-
core/
lib/ Drupal/ Core/ Entity/ Query/ Sql/ Query.php, line 337
Class
- Query
- The SQL storage entity query class.
Namespace
Drupal\Core\Entity\Query\SqlCode
public function __toString() {
// Clone the query so the prepare and compile doesn't get repeated.
$clone = clone $this;
$clone->prepare()
->compile()
->addSort()
->finish();
// Quote arguments so query is able to be run.
$quoted = [];
foreach ($clone->sqlQuery
->getArguments() as $key => $value) {
$quoted[$key] = is_null($value) ? 'NULL' : $this->connection
->quote($value);
}
// Replace table name brackets.
$sql = $clone->connection
->prefixTables((string) $clone->sqlQuery);
$sql = $clone->connection
->quoteIdentifiers($sql);
return strtr($sql, $quoted);
}