MediaWiki REL1_39
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 or not 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 40 of file LanguageNameUtils.php.

Constructor & Destructor Documentation

◆ __construct()

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

Definition at line 91 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 291 of file LanguageNameUtils.php.

◆ getJsonMessagesFileName()

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

Definition at line 315 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 defaults to self::ALL instead of self::DEFINED
Returns
string Language name or empty
Since
1.20

Definition at line 277 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 185 of file LanguageNameUtils.php.

◆ getMessagesFileName()

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

Definition at line 303 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 160 of file LanguageNameUtils.php.

Referenced by AllMessagesTablePager\__construct().

◆ 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 104 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 149 of file LanguageNameUtils.php.

◆ isValidCode()

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

Returns true if a language code string is of a valid form, whether or not 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 illegal in MediaWiki titles.

Definition at line 127 of file LanguageNameUtils.php.

References MediaWikiTitleCodec\getTitleInvalidRegex().

Member Data Documentation

◆ ALL

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

Return all known languages in getLanguageName(s).

Definition at line 49 of file LanguageNameUtils.php.

◆ AUTONYMS

const MediaWiki\Languages\LanguageNameUtils::AUTONYMS = null

Return autonyms in getLanguageName(s).

Definition at line 44 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 UsePigLatinVariant
Name constant for the UsePigLatinVariant setting, for use with Config::get()
Access: internal
For use by ServiceWiring

Definition at line 79 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 54 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 59 of file LanguageNameUtils.php.


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