You are here

public function StringDatabaseStorage::getLocations in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/locale/src/StringDatabaseStorage.php \Drupal\locale\StringDatabaseStorage::getLocations()
  2. 10 core/modules/locale/src/StringDatabaseStorage.php \Drupal\locale\StringDatabaseStorage::getLocations()

Loads string location information.

Parameters

array $conditions: (optional) Array with conditions to filter the locations that may be any of the following elements:

  • 'sid', The string identifier.
  • 'type', The location type.
  • 'name', The location name.

Return value

\Drupal\locale\StringInterface[] Array of \Drupal\locale\StringInterface objects matching the conditions.

Overrides StringStorageInterface::getLocations

See also

\Drupal\locale\StringStorageInterface::getStrings()

File

core/modules/locale/src/StringDatabaseStorage.php, line 88

Class

StringDatabaseStorage
Defines a class to store localized strings in the database.

Namespace

Drupal\locale

Code

public function getLocations(array $conditions = []) {
  $query = $this->connection
    ->select('locales_location', 'l', $this->options)
    ->fields('l');
  foreach ($conditions as $field => $value) {

    // Cast scalars to array so we can consistently use an IN condition.
    $query
      ->condition('l.' . $field, (array) $value, 'IN');
  }
  return $query
    ->execute()
    ->fetchAll();
}