You are here

public function Connection::mapConditionOperator in Zircon Profile 8

Same name in this branch
  1. 8 core/lib/Drupal/Core/Database/Connection.php \Drupal\Core\Database\Connection::mapConditionOperator()
  2. 8 core/lib/Drupal/Core/Database/Driver/sqlite/Connection.php \Drupal\Core\Database\Driver\sqlite\Connection::mapConditionOperator()
  3. 8 core/lib/Drupal/Core/Database/Driver/pgsql/Connection.php \Drupal\Core\Database\Driver\pgsql\Connection::mapConditionOperator()
  4. 8 core/lib/Drupal/Core/Database/Driver/mysql/Connection.php \Drupal\Core\Database\Driver\mysql\Connection::mapConditionOperator()
Same name and namespace in other branches
  1. 8.0 core/lib/Drupal/Core/Database/Driver/sqlite/Connection.php \Drupal\Core\Database\Driver\sqlite\Connection::mapConditionOperator()

Gets any special processing requirements for the condition operator.

Some condition types require special processing, such as IN, because the value data they pass in is not a simple value. This is a simple overridable lookup function. Database connections should define only those operators they wish to be handled differently than the default.

Parameters

string $operator: The condition operator, such as "IN", "BETWEEN", etc. Case-sensitive.

Return value

The extra handling directives for the specified operator, or NULL.

Overrides Connection::mapConditionOperator

See also

\Drupal\Core\Database\Query\Condition::compile()

File

core/lib/Drupal/Core/Database/Driver/sqlite/Connection.php, line 367
Contains \Drupal\Core\Database\Driver\sqlite\Connection.

Class

Connection
SQLite implementation of \Drupal\Core\Database\Connection.

Namespace

Drupal\Core\Database\Driver\sqlite

Code

public function mapConditionOperator($operator) {

  // We don't want to override any of the defaults.
  static $specials = array(
    'LIKE' => array(
      'postfix' => " ESCAPE '\\'",
    ),
    'NOT LIKE' => array(
      'postfix' => " ESCAPE '\\'",
    ),
    'LIKE BINARY' => array(
      'postfix' => " ESCAPE '\\'",
      'operator' => 'GLOB',
    ),
    'NOT LIKE BINARY' => array(
      'postfix' => " ESCAPE '\\'",
      'operator' => 'NOT GLOB',
    ),
  );
  return isset($specials[$operator]) ? $specials[$operator] : NULL;
}