/Drupal 8

public function SelectExtender::condition

public SelectExtender::condition($field, $value = NULL, $operator = '=')

Helper function: builds the most common conditional clauses.

This method can take a variable number of parameters. If called with two parameters, they are taken as $field and $value with $operator having a value of =.

Do not use this method to test for NULL values. Instead, use QueryConditionInterface::isNull() or QueryConditionInterface::isNotNull().

Drupal considers LIKE case insensitive and the following is often used to tell the database that case insensitive equivalence is desired:

 ->condition('name', db_like($name), 'LIKE')

Use 'LIKE BINARY' instead of 'LIKE' for case sensitive queries.

Note: When using MySQL, the exact behavior also depends on the used collation. if the field is set to binary, then a LIKE condition will also be case sensitive and when a case insensitive collation is used, the = operator will also be case insensitive.


$field: The name of the field to check. If you would like to add a more complex condition involving operators or functions, use where().

$value: The value to test the field against. In most cases, this is a scalar. For more complex options, it is an array. The meaning of each element in the array is dependent on the $operator.

$operator: The comparison operator, such as =, <, or >=. It also accepts more complex options such as IN, LIKE, LIKE BINARY, or BETWEEN. Defaults to =.

Return value

\Drupal\Core\Database\Query\ConditionInterface The called object.

Overrides ConditionInterface::condition

See also




core/lib/Drupal/Core/Database/Query/SelectExtender.php, line 103


The base extender class for Select queries.




public function condition($field, $value = NULL, $operator = '=') {
  $this->query->condition($field, $value, $operator);
  return $this;

© 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.