function Connection::escapeAlias

Same name in this branch
  1. 8.9.x core/lib/Drupal/Core/Database/Driver/mysql/Connection.php \Drupal\Core\Database\Driver\mysql\Connection::escapeAlias()
  2. 8.9.x core/lib/Drupal/Core/Database/Driver/pgsql/Connection.php \Drupal\Core\Database\Driver\pgsql\Connection::escapeAlias()
Same name in other branches
  1. 9 core/lib/Drupal/Core/Database/Connection.php \Drupal\Core\Database\Connection::escapeAlias()
  2. 10 core/lib/Drupal/Core/Database/Connection.php \Drupal\Core\Database\Connection::escapeAlias()
  3. 11.x core/lib/Drupal/Core/Database/Connection.php \Drupal\Core\Database\Connection::escapeAlias()

Escapes an alias name string.

Force all alias names to be strictly alphanumeric-plus-underscore. In contrast to DatabaseConnection::escapeField() / DatabaseConnection::escapeTable(), this doesn't allow the period (".") because that is not allowed in aliases.

Parameters

string $field: An unsanitized alias name.

Return value

string The sanitized alias name.

1 call to Connection::escapeAlias()
Connection::escapeAlias in core/lib/Drupal/Core/Database/Driver/mysql/Connection.php
Escapes an alias name string.
2 methods override Connection::escapeAlias()
Connection::escapeAlias in core/lib/Drupal/Core/Database/Driver/mysql/Connection.php
Escapes an alias name string.
Connection::escapeAlias in core/lib/Drupal/Core/Database/Driver/pgsql/Connection.php
Escapes an alias name string.

File

core/lib/Drupal/Core/Database/Connection.php, line 1049

Class

Connection
Base Database API class.

Namespace

Drupal\Core\Database

Code

public function escapeAlias($field) {
    if (!isset($this->escapedAliases[$field])) {
        $this->escapedAliases[$field] = preg_replace('/[^A-Za-z0-9_]+/', '', $field);
    }
    return $this->escapedAliases[$field];
}

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