MediaWiki REL1_41
MediaWiki\Languages\LanguageNameUtils Class Reference

A service that provides utilities to do with language names and codes. More...

Public Member Functions

 __construct (ServiceOptions $options, HookContainer $hookContainer)
 
 getFileName ( $prefix, $code, $suffix='.php')
 Get the name of a file for a certain language code.
 
 getJsonMessagesFileName ( $code)
 
 getLanguageName ( $code, $inLanguage=self::AUTONYMS, $include=self::ALL)
 
 getLanguageNames ( $inLanguage=self::AUTONYMS, $include=self::DEFINED)
 Get an array of language names, indexed by code.
 
 getMessagesFileName ( $code)
 
 isKnownLanguageTag (string $tag)
 Returns true if a language code is an IETF tag known to MediaWiki.
 
 isSupportedLanguage (string $code)
 Checks whether any localisation is available for that language tag in MediaWiki (MessagesXx.php or xx.json exists).
 
 isValidBuiltInCode (string $code)
 Returns true if a language code is of a valid form for the purposes of internal customisation of MediaWiki, via Messages*.php or *.json.
 
 isValidCode (string $code)
 Returns true if a language code string is of a valid form, whether it exists.
 

Public Attributes

const ALL = 'all'
 Return all known languages in getLanguageName(s).
 
const AUTONYMS = null
 Return autonyms in getLanguageName(s).
 
const CONSTRUCTOR_OPTIONS
 
const DEFINED = 'mw'
 Return in getLanguageName(s) only the languages that are defined by MediaWiki.
 
const SUPPORTED = 'mwfile'
 Return in getLanguageName(s) only the languages for which we have at least some localisation.
 

Detailed Description

A service that provides utilities to do with language names and codes.

See https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation for more information.

Since
1.34

Definition at line 41 of file LanguageNameUtils.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Languages\LanguageNameUtils::__construct ( ServiceOptions $options,
HookContainer $hookContainer )
Parameters
ServiceOptions$options
HookContainer$hookContainer

Definition at line 93 of file LanguageNameUtils.php.

References MediaWiki\Config\ServiceOptions\assertRequiredOptions().

Member Function Documentation

◆ getFileName()

MediaWiki\Languages\LanguageNameUtils::getFileName ( $prefix,
$code,
$suffix = '.php' )

Get the name of a file for a certain language code.

Parameters
string$prefixPrepend this to the filename
string$codeLanguage code
string$suffixAppend this to the filename
Exceptions
MWException
Returns
string $prefix . $mangledCode . $suffix

Definition at line 308 of file LanguageNameUtils.php.

◆ getJsonMessagesFileName()

MediaWiki\Languages\LanguageNameUtils::getJsonMessagesFileName ( $code)
Parameters
string$code
Returns
string
Exceptions
MWException

Definition at line 332 of file LanguageNameUtils.php.

References $IP.

◆ getLanguageName()

MediaWiki\Languages\LanguageNameUtils::getLanguageName ( $code,
$inLanguage = self::AUTONYMS,
$include = self::ALL )
Parameters
string$codeThe code of the language for which to get the name
null | string$inLanguageCode of language in which to return the name (self::AUTONYMS for autonyms)
string$includeSee getLanguageNames(), except this function defaults to self::ALL instead of self::DEFINED
Returns
string Language name or empty

Definition at line 293 of file LanguageNameUtils.php.

◆ getLanguageNames()

MediaWiki\Languages\LanguageNameUtils::getLanguageNames ( $inLanguage = self::AUTONYMS,
$include = self::DEFINED )

Get an array of language names, indexed by code.

Parameters
null | string$inLanguageCode of language in which to return the names Use self::AUTONYMS for autonyms (native names)
string$includeOne of: self::ALL All available languages self::DEFINED Only if the language is defined in MediaWiki or wgExtraLanguageNames (default) self::SUPPORTED Only if the language is in self::DEFINED and has a message file
Returns
array Language code => language name (sorted by key)

Definition at line 195 of file LanguageNameUtils.php.

◆ getMessagesFileName()

MediaWiki\Languages\LanguageNameUtils::getMessagesFileName ( $code)
Parameters
string$code
Returns
string

Definition at line 320 of file LanguageNameUtils.php.

References $file, and $IP.

◆ isKnownLanguageTag()

MediaWiki\Languages\LanguageNameUtils::isKnownLanguageTag ( string $tag)

Returns true if a language code is an IETF tag known to MediaWiki.

Parameters
string$tag
Returns
bool

Definition at line 169 of file LanguageNameUtils.php.

◆ isSupportedLanguage()

MediaWiki\Languages\LanguageNameUtils::isSupportedLanguage ( string $code)

Checks whether any localisation is available for that language tag in MediaWiki (MessagesXx.php or xx.json exists).

Parameters
string$codeLanguage tag (in lower case)
Returns
bool Whether language is supported

Definition at line 106 of file LanguageNameUtils.php.

◆ isValidBuiltInCode()

MediaWiki\Languages\LanguageNameUtils::isValidBuiltInCode ( string $code)

Returns true if a language code is of a valid form for the purposes of internal customisation of MediaWiki, via Messages*.php or *.json.

Parameters
string$code
Returns
bool

Definition at line 158 of file LanguageNameUtils.php.

◆ isValidCode()

MediaWiki\Languages\LanguageNameUtils::isValidCode ( string $code)

Returns true if a language code string is of a valid form, whether it exists.

This includes codes which are used solely for customisation via the MediaWiki namespace.

Parameters
string$code
Returns
bool False if the language code contains dangerous characters, e.g, HTML special characters or characters that are illegal in MediaWiki titles.

Definition at line 136 of file LanguageNameUtils.php.

References MediaWiki\Title\MediaWikiTitleCodec\getTitleInvalidRegex().

Member Data Documentation

◆ ALL

const MediaWiki\Languages\LanguageNameUtils::ALL = 'all'

Return all known languages in getLanguageName(s).

Definition at line 50 of file LanguageNameUtils.php.

◆ AUTONYMS

const MediaWiki\Languages\LanguageNameUtils::AUTONYMS = null

Return autonyms in getLanguageName(s).

Definition at line 45 of file LanguageNameUtils.php.

◆ CONSTRUCTOR_OPTIONS

const MediaWiki\Languages\LanguageNameUtils::CONSTRUCTOR_OPTIONS
Initial value:
= [
]
const ExtraLanguageNames
Name constant for the ExtraLanguageNames setting, for use with Config::get()
const UseXssLanguage
Name constant for the UseXssLanguage setting, for use with Config::get()
const UsePigLatinVariant
Name constant for the UsePigLatinVariant setting, for use with Config::get()
Access: internal
For use by ServiceWiring

Definition at line 80 of file LanguageNameUtils.php.

◆ DEFINED

const MediaWiki\Languages\LanguageNameUtils::DEFINED = 'mw'

Return in getLanguageName(s) only the languages that are defined by MediaWiki.

Definition at line 55 of file LanguageNameUtils.php.

◆ SUPPORTED

const MediaWiki\Languages\LanguageNameUtils::SUPPORTED = 'mwfile'

Return in getLanguageName(s) only the languages for which we have at least some localisation.

Definition at line 60 of file LanguageNameUtils.php.


The documentation for this class was generated from the following file: