public Select::compile(Connection $connection, PlaceholderInterface $queryPlaceholder)
Compiles the saved conditions for later retrieval.
This method does not return anything, but simply prepares data to be retrieved via __toString() and arguments().
$connection: The database connection for which to compile the conditionals.
$queryPlaceholder: The query this condition belongs to. If not given, the current query is used.
Overrides QueryConditionTrait::compile
public function compile(Connection $connection, PlaceholderInterface $queryPlaceholder) { $this->condition->compile($connection, $queryPlaceholder); $this->having->compile($connection, $queryPlaceholder); foreach ($this->tables as $table) { // If this table is a subquery, compile it recursively. if ($table['table'] instanceof SelectInterface) { $table['table']->compile($connection, $queryPlaceholder); } // Make sure join conditions are also compiled. if (!empty($table['condition']) && $table['condition'] instanceof ConditionInterface) { $table['condition']->compile($connection, $queryPlaceholder); } } // If there are any dependent queries to UNION, compile it recursively. foreach ($this->union as $union) { $union['query']->compile($connection, $queryPlaceholder); } }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Database!Query!Select.php/function/Select::compile/8.1.x