public function AliasStorage::load

public AliasStorage::load($conditions)

Fetches a specific URL alias from the database.

The default implementation performs case-insensitive matching on the 'source' and 'alias' strings.

Parameters

array $conditions: An array of query conditions.

Return value

array|false FALSE if no alias was found or an associative array containing the following keys:

  • source (string): The internal system path with a starting slash.
  • alias (string): The URL alias with a starting slash.
  • pid (int): Unique path alias identifier.
  • langcode (string): The language code of the alias.

Overrides AliasStorageInterface::load

File

core/lib/Drupal/Core/Path/AliasStorage.php, line 129

Class

AliasStorage
Provides a class for CRUD operations on path aliases.

Namespace

Drupal\Core\Path

Code

public function load($conditions) {
  $select = $this->connection->select(static::TABLE);
  foreach ($conditions as $field => $value) {
    if ($field == 'source' || $field == 'alias') {
      // Use LIKE for case-insensitive matching.
      $select->condition($field, $this->connection->escapeLike($value), 'LIKE');
    }
    else {
      $select->condition($field, $value);
    }
  }
  try {
    return $select
    ->fields(static::TABLE)
      ->orderBy('pid', 'DESC')
      ->range(0, 1)
      ->execute()
      ->fetchAssoc();
  }
  catch (\Exception $e) {
    $this->catchException($e);
    return FALSE;
  }
}

© 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!Path!AliasStorage.php/function/AliasStorage::load/8.1.x