Language
in package
Class Language
Table of Contents
Properties
- $active : string|false
- $config : Config
- $default : string|false
- $enabled : bool
- $fallback_extensions : array<string|int, mixed>
- $fallback_languages : array<string|int, mixed>
- $grav : Grav
- $http_accept_language : array<string|int, mixed>
- $lang_in_url : bool
- $languages : array<string|int, mixed>
- $page_extensions : array<string|int, mixed>
Methods
- __construct() : mixed
- Constructor
- __debugInfo() : array<string|int, mixed>
- enabled() : bool
- Ensure that languages are enabled
- getActive() : string|false
- Gets current active language
- getAvailable() : string
- Gets a pipe-separated string of available languages
- getBrowserLanguages() : array<string|int, mixed>
- Get the browser accepted languages
- getDefault() : string|false
- Gets current default language
- getFallbackLanguages() : array<string|int, mixed>
- Gets an array of languages with active first, then fallback languages.
- getFallbackPageExtensions() : array<string|int, mixed>
- Gets an array of valid extensions with active first, then fallback extensions
- getLanguage() : string|false
- Gets language, active if set, else default
- getLanguageCode() : string|false
- Accessible wrapper to LanguageCodes
- getLanguages() : array<string|int, mixed>
- Gets the array of supported languages
- getLanguageURLPrefix() : string
- Get a URL prefix based on configuration
- getPageExtensions() : array<string|int, mixed>
- Get full list of used language page extensions: [''=>'.md', 'en'=>'.en.md', ...]
- getTranslation() : string|array<string|int, string>
- Lookup the translation text for a given lang and key
- init() : void
- Initialize the default and enabled languages
- isDebug() : bool
- Returns true if language debugging is turned on.
- isIncludeDefaultLanguage() : bool
- Test to see if language is default and language should be included in the URL
- isLanguageInUrl() : bool
- Simple getter to tell if a language was found in the URL
- resetFallbackPageExtensions() : void
- Resets the fallback_languages value.
- setActive() : string|false
- Sets active language manually
- setActiveFromUri() : string
- Sets the active language based on the first part of the URL
- setDefault() : string|bool
- Sets default language manually
- setLanguages() : void
- Sets the current supported languages manually
- translate() : string|array<string|int, string>
- Translate a key and possibly arguments into a string using current lang and fallbacks
- translateArray() : string
- Translate Array
- validate() : bool
- Ensures the language is valid and supported
- getTranslatedLanguages() : array<string|int, mixed>
Properties
$active
protected
string|false
$active
$config
protected
Config
$config
$default
protected
string|false
$default
$enabled
protected
bool
$enabled
= true
$fallback_extensions
protected
array<string|int, mixed>
$fallback_extensions
= []
$fallback_languages
protected
array<string|int, mixed>
$fallback_languages
= []
$grav
protected
Grav
$grav
$http_accept_language
protected
array<string|int, mixed>
$http_accept_language
$lang_in_url
protected
bool
$lang_in_url
= false
$languages
protected
array<string|int, mixed>
$languages
= []
$page_extensions
protected
array<string|int, mixed>
$page_extensions
= []
Methods
__construct()
Constructor
public
__construct(Grav $grav) : mixed
Parameters
- $grav : Grav
__debugInfo()
public
__debugInfo() : array<string|int, mixed>
Attributes
- #[ReturnTypeWillChange]
Return values
array<string|int, mixed>enabled()
Ensure that languages are enabled
public
enabled() : bool
Return values
boolgetActive()
Gets current active language
public
getActive() : string|false
Return values
string|falsegetAvailable()
Gets a pipe-separated string of available languages
public
getAvailable([string|null $delimiter = null ]) : string
Parameters
- $delimiter : string|null = null
-
Delimiter to be quoted.
Return values
stringgetBrowserLanguages()
Get the browser accepted languages
public
getBrowserLanguages([array<string|int, mixed> $accept_langs = [] ]) : array<string|int, mixed>
No longer used - using content negotiation.
Parameters
- $accept_langs : array<string|int, mixed> = []
Return values
array<string|int, mixed>getDefault()
Gets current default language
public
getDefault() : string|false
Return values
string|falsegetFallbackLanguages()
Gets an array of languages with active first, then fallback languages.
public
getFallbackLanguages([string|null $languageCode = null ][, bool $includeDefault = false ]) : array<string|int, mixed>
Parameters
- $languageCode : string|null = null
- $includeDefault : bool = false
-
If true, list contains '', which can be used for default
Return values
array<string|int, mixed>getFallbackPageExtensions()
Gets an array of valid extensions with active first, then fallback extensions
public
getFallbackPageExtensions([string|null $fileExtension = null ][, string|null $languageCode = null ][, bool $assoc = false ]) : array<string|int, mixed>
Parameters
- $fileExtension : string|null = null
- $languageCode : string|null = null
- $assoc : bool = false
-
Return values in ['en' => '.en.md', ...] format.
Return values
array<string|int, mixed> —Key is the language code, value is the file extension to be used.
getLanguage()
Gets language, active if set, else default
public
getLanguage() : string|false
Return values
string|falsegetLanguageCode()
Accessible wrapper to LanguageCodes
public
getLanguageCode(string $code[, string $type = 'name' ]) : string|false
Parameters
- $code : string
- $type : string = 'name'
Return values
string|falsegetLanguages()
Gets the array of supported languages
public
getLanguages() : array<string|int, mixed>
Return values
array<string|int, mixed>getLanguageURLPrefix()
Get a URL prefix based on configuration
public
getLanguageURLPrefix([string|null $lang = null ]) : string
Parameters
- $lang : string|null = null
Return values
stringgetPageExtensions()
Get full list of used language page extensions: [''=>'.md', 'en'=>'.en.md', ...]
public
getPageExtensions([string|null $fileExtension = null ]) : array<string|int, mixed>
Parameters
- $fileExtension : string|null = null
Return values
array<string|int, mixed>getTranslation()
Lookup the translation text for a given lang and key
public
getTranslation(string $lang, string $key[, bool $array_support = false ]) : string|array<string|int, string>
Parameters
- $lang : string
-
lang code
- $key : string
-
key to lookup with
- $array_support : bool = false
Return values
string|array<string|int, string>init()
Initialize the default and enabled languages
public
init() : void
isDebug()
Returns true if language debugging is turned on.
public
isDebug() : bool
Return values
boolisIncludeDefaultLanguage()
Test to see if language is default and language should be included in the URL
public
isIncludeDefaultLanguage([string|null $lang = null ]) : bool
Parameters
- $lang : string|null = null
Return values
boolisLanguageInUrl()
Simple getter to tell if a language was found in the URL
public
isLanguageInUrl() : bool
Return values
boolresetFallbackPageExtensions()
Resets the fallback_languages value.
public
resetFallbackPageExtensions() : void
Useful to re-initialize the pages and change site language at runtime, example:
$this->grav['language']->setActive('it');
$this->grav['language']->resetFallbackPageExtensions();
$this->grav['pages']->init();
setActive()
Sets active language manually
public
setActive(string|false $lang) : string|false
Parameters
- $lang : string|false
Return values
string|falsesetActiveFromUri()
Sets the active language based on the first part of the URL
public
setActiveFromUri(string $uri) : string
Parameters
- $uri : string
Return values
stringsetDefault()
Sets default language manually
public
setDefault(string $lang) : string|bool
Parameters
- $lang : string
Return values
string|boolsetLanguages()
Sets the current supported languages manually
public
setLanguages(array<string|int, mixed> $langs) : void
Parameters
- $langs : array<string|int, mixed>
translate()
Translate a key and possibly arguments into a string using current lang and fallbacks
public
translate(string|array<string|int, mixed> $args[, array<string|int, mixed>|null $languages = null ][, bool $array_support = false ][, bool $html_out = false ]) : string|array<string|int, string>
Parameters
- $args : string|array<string|int, mixed>
-
The first argument is the lookup key value Other arguments can be passed and replaced in the translation with sprintf syntax
- $languages : array<string|int, mixed>|null = null
- $array_support : bool = false
- $html_out : bool = false
Return values
string|array<string|int, string>translateArray()
Translate Array
public
translateArray(string $key, string $index[, array<string|int, mixed>|null $languages = null ][, bool $html_out = false ]) : string
Parameters
- $key : string
- $index : string
- $languages : array<string|int, mixed>|null = null
- $html_out : bool = false
Return values
stringvalidate()
Ensures the language is valid and supported
public
validate(string $lang) : bool
Parameters
- $lang : string
Return values
boolgetTranslatedLanguages()
protected
getTranslatedLanguages() : array<string|int, mixed>