function language_url_split_prefix

Splits the given path into prefix and actual path.

Parse the given path and return the language object identified by the prefix and the actual path.

Parameters

$path: The path to split.

$languages: An array of valid languages.

Return value

An array composed of:

  • A language object corresponding to the identified prefix on success, FALSE otherwise.
  • The path without the prefix on success, the given path otherwise.

Related topics

1 call to language_url_split_prefix()
locale_language_from_url in drupal/includes/locale.inc
Identify language via URL prefix or domain.

File

drupal/includes/language.inc, line 530
Language Negotiation API.

Code

function language_url_split_prefix($path, $languages) {
  $args = empty($path) ? array() : explode('/', $path);
  $prefix = array_shift($args);

  // Search prefix within enabled languages.
  foreach ($languages as $language) {
    if (!empty($language->prefix) && $language->prefix == $prefix) {

      // Rebuild $path with the language removed.
      return array(
        $language,
        implode('/', $args),
      );
    }
  }
  return array(
    FALSE,
    $path,
  );
}