Class

Symfony\Component\Translation\MessageCatalogue

class MessageCatalogue implements MessageCatalogueInterface, MetadataAwareInterface

MessageCatalogue.

Methods

__construct(string $locale, array $messages = array())

Constructor.

string getLocale()

Gets the catalogue locale.

array getDomains()

Gets the domains.

array all(string $domain = null)

Gets the messages within a given domain.

set(string $id, string $translation, string $domain = 'messages')

Sets a message translation.

bool has(string $id, string $domain = 'messages')

Checks if a message has a translation.

bool defines(string $id, string $domain = 'messages')

Checks if a message has a translation (it does not take into account the fallback mechanism).

string get(string $id, string $domain = 'messages')

Gets a message translation.

replace(array $messages, string $domain = 'messages')

Sets translations for a given domain.

add(array $messages, string $domain = 'messages')

Adds translations for a given domain.

addCatalogue(MessageCatalogueInterface $catalogue)

Merges translations from the given Catalogue into the current one.

addFallbackCatalogue(MessageCatalogueInterface $catalogue)

Merges translations from the given Catalogue into the current one only when the translation does not exist.

MessageCatalogueInterface|null getFallbackCatalogue()

Gets the fallback catalogue.

ResourceInterface[] getResources()

Returns an array of resources loaded to build this collection.

addResource(ResourceInterface $resource)

Adds a resource for this collection.

mixed getMetadata(string $key = '', string $domain = 'messages')

Gets metadata for the given domain and key.

setMetadata(string $key, mixed $value, string $domain = 'messages')

Adds metadata to a message domain.

deleteMetadata(string $key = '', string $domain = 'messages')

Deletes metadata for the given key and domain.

Details

at line 40
public __construct(string $locale, array $messages = array())

Constructor.

Parameters

string $locale The locale
array $messages An array of messages classified by domain

at line 51
public string getLocale()

Gets the catalogue locale.

Return Value

string The locale

at line 61
public array getDomains()

Gets the domains.

Return Value

array An array of domains

at line 71
public array all(string $domain = null)

Gets the messages within a given domain.

If $domain is null, it returns all messages.

Parameters

string $domain The domain name

Return Value

array An array of messages

at line 85
public set(string $id, string $translation, string $domain = 'messages')

Sets a message translation.

Parameters

string $id The message id
string $translation The messages translation
string $domain The domain name

at line 95
public bool has(string $id, string $domain = 'messages')

Checks if a message has a translation.

Parameters

string $id The message id
string $domain The domain name

Return Value

bool true if the message has a translation, false otherwise

at line 111
public bool defines(string $id, string $domain = 'messages')

Checks if a message has a translation (it does not take into account the fallback mechanism).

Parameters

string $id The message id
string $domain The domain name

Return Value

bool true if the message has a translation, false otherwise

at line 121
public string get(string $id, string $domain = 'messages')

Gets a message translation.

Parameters

string $id The message id
string $domain The domain name

Return Value

string The message translation

at line 139
public replace(array $messages, string $domain = 'messages')

Sets translations for a given domain.

Parameters

array $messages An array of translations
string $domain The domain name

at line 151
public add(array $messages, string $domain = 'messages')

Adds translations for a given domain.

Parameters

array $messages An array of translations
string $domain The domain name

at line 165
public addCatalogue(MessageCatalogueInterface $catalogue)

Merges translations from the given Catalogue into the current one.

The two catalogues must have the same locale.

Parameters

MessageCatalogueInterface $catalogue A MessageCatalogueInterface instance

at line 190
public addFallbackCatalogue(MessageCatalogueInterface $catalogue)

Merges translations from the given Catalogue into the current one only when the translation does not exist.

This is used to provide default translations when they do not exist for the current locale.

Parameters

MessageCatalogueInterface $catalogue A MessageCatalogueInterface instance

at line 213
public MessageCatalogueInterface|null getFallbackCatalogue()

Gets the fallback catalogue.

Return Value

MessageCatalogueInterface|null A MessageCatalogueInterface instance or null when no fallback has been set

at line 223
public ResourceInterface[] getResources()

Returns an array of resources loaded to build this collection.

Return Value

ResourceInterface[] An array of resources

at line 233
public addResource(ResourceInterface $resource)

Adds a resource for this collection.

Parameters

ResourceInterface $resource A resource instance

at line 241
public mixed getMetadata(string $key = '', string $domain = 'messages')

Gets metadata for the given domain and key.

Passing an empty domain will return an array with all metadata indexed by domain and then by key. Passing an empty key will return an array with all metadata for the given domain.

Parameters

string $key The key
string $domain The domain name

Return Value

mixed The value that was set or an array with the domains/keys or null

at line 261
public setMetadata(string $key, mixed $value, string $domain = 'messages')

Adds metadata to a message domain.

Parameters

string $key The key
mixed $value The value
string $domain The domain name

at line 269
public deleteMetadata(string $key = '', string $domain = 'messages')

Deletes metadata for the given key and domain.

Passing an empty domain will delete all metadata. Passing an empty key will delete all metadata for the given domain.

Parameters

string $key The key
string $domain The domain name