public function AliasStorage::aliasExists in Drupal 8
Checks if alias already exists.
The default implementation performs case-insensitive matching on the 'source' and 'alias' strings.
Parameters
string $alias: Alias to check against.
string $langcode: Language of the alias.
string|null $source: (optional) Path that alias is to be assigned to.
Return value
bool TRUE if alias already exists and FALSE otherwise.
Overrides AliasStorageInterface::aliasExists
File
- core/
lib/ Drupal/ Core/ Path/ AliasStorage.php, line 282
Class
- AliasStorage
- Provides a class for CRUD operations on path aliases.
Namespace
Drupal\Core\PathCode
public function aliasExists($alias, $langcode, $source = NULL) {
// Use LIKE and NOT LIKE for case-insensitive matching.
$query = $this->connection
->select(static::TABLE)
->condition('alias', $this->connection
->escapeLike($alias), 'LIKE')
->condition('langcode', $langcode);
if (!empty($source)) {
$query
->condition('path', $this->connection
->escapeLike($source), 'NOT LIKE');
}
$query
->addExpression('1');
$query
->range(0, 1);
return (bool) $query
->execute()
->fetchField();
}