PHP Class yii\mongodb\i18n\MongoDbMessageSource

This message source uses single collection for the message translations storage, defined via [[collection]]. each entry in this collection should have 3 fields: - language: string, translation language - category: string, name translation category - messages: array, list of actual message translations, in each element: the key is raw message name value - message translation. For example: json { "category": "app", "language": "de", "messages": { "Hello world!": "Hallo Welt!", "The dog runs fast.": "Der Hund rennt schnell.", ... }, }
Since: 2.0.5
Author: Paul Klimov ([email protected])
Inheritance: extends yii\i18n\MessageSource
Afficher le fichier Open project: yiisoft/yii2-mongodb

Méthodes publiques

Свойство Type Description
$cache the cache object or the application component ID of the cache object. The messages data will be cached using this cache object. Note, that to enable caching you have to set [[enableCaching]] to true, otherwise setting this property has no effect. After the MongoDbMessageSource object is created, if you want to change this property, you should only assign it with a cache object. This can also be a configuration array for creating the object.
$cachingDuration the time in seconds that the messages can remain valid in cache. Use 0 to indicate that the cached data will never expire.
$collection the name of the MongoDB collection, which stores translated messages. This collection is better to be pre-created with fields 'category' and 'language' indexed.
$db the MongoDB connection object or the application component ID of the MongoDB connection. After the MongoDbMessageSource object is created, if you want to change this property, you should only assign it with a MongoDB connection object. This can also be a configuration array for creating the object.
$enableCaching whether to enable caching translated messages

Méthodes publiques

Méthode Description
init ( ) Initializes the DbMessageSource component.

Méthodes protégées

Méthode Description
loadMessages ( string $category, string $language ) : array Loads the message translation for the specified language and category.
loadMessagesFromDb ( string $category, string $language ) : array Loads the messages from MongoDB.

Method Details

init() public méthode

This method will initialize the [[db]] property to make sure it refers to a valid DB connection. Configured [[cache]] component would also be initialized.
public init ( )

loadMessages() protected méthode

If translation for specific locale code such as en-US isn't found it tries more generic en.
protected loadMessages ( string $category, string $language ) : array
$category string the message category
$language string the target language
Résultat array the loaded messages. The keys are original messages, and the values are translated messages.

loadMessagesFromDb() protected méthode

You may override this method to customize the message storage in the MongoDB.
protected loadMessagesFromDb ( string $category, string $language ) : array
$category string the message category.
$language string the target language.
Résultat array the messages loaded from database.

Property Details

$cache public_oe property

the cache object or the application component ID of the cache object. The messages data will be cached using this cache object. Note, that to enable caching you have to set [[enableCaching]] to true, otherwise setting this property has no effect. After the MongoDbMessageSource object is created, if you want to change this property, you should only assign it with a cache object. This can also be a configuration array for creating the object.
See also: cachingDuration
See also: enableCaching
public $cache

$cachingDuration public_oe property

the time in seconds that the messages can remain valid in cache. Use 0 to indicate that the cached data will never expire.
See also: enableCaching
public $cachingDuration

$collection public_oe property

the name of the MongoDB collection, which stores translated messages. This collection is better to be pre-created with fields 'category' and 'language' indexed.
public $collection

$db public_oe property

the MongoDB connection object or the application component ID of the MongoDB connection. After the MongoDbMessageSource object is created, if you want to change this property, you should only assign it with a MongoDB connection object. This can also be a configuration array for creating the object.
public $db

$enableCaching public_oe property

whether to enable caching translated messages
public $enableCaching