Documentation

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

$default

protected string|false $default

$fallback_extensions

protected array<string|int, mixed> $fallback_extensions = []

$fallback_languages

protected array<string|int, mixed> $fallback_languages = []

$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
bool

getActive()

Gets current active language

public getActive() : string|false
Return values
string|false

getAvailable()

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
string

getBrowserLanguages()

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|false

getFallbackLanguages()

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|false

getLanguageCode()

Accessible wrapper to LanguageCodes

public getLanguageCode(string $code[, string $type = 'name' ]) : string|false
Parameters
$code : string
$type : string = 'name'
Return values
string|false

getLanguages()

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
string

getPageExtensions()

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
bool

isIncludeDefaultLanguage()

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
bool

isLanguageInUrl()

Simple getter to tell if a language was found in the URL

public isLanguageInUrl() : bool
Return values
bool

resetFallbackPageExtensions()

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|false

setActiveFromUri()

Sets the active language based on the first part of the URL

public setActiveFromUri(string $uri) : string
Parameters
$uri : string
Return values
string

setDefault()

Sets default language manually

public setDefault(string $lang) : string|bool
Parameters
$lang : string
Return values
string|bool

setLanguages()

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
string

validate()

Ensures the language is valid and supported

public validate(string $lang) : bool
Parameters
$lang : string
Return values
bool

getTranslatedLanguages()

protected getTranslatedLanguages() : array<string|int, mixed>
Return values
array<string|int, mixed>

        
On this page

Search results