Class I18n
I18n handles translation of Text and time format strings.
- Object
- I18n
Copyright: Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
License: License (http://www.opensource.org/licenses/mit-license.php)
Location: i18n.php
Properties summary
-
$__categories
publicarray
Set to true when I18N::__bindTextDomain() is called for the first time. If a translation file is found it is set to false again
-
$__domains
publicarray
Translation strings for a specific domain read from the .mo or .po files -
$__lang
publicstring
Current language used for translations -
$__noLocale
publicboolean
Set to true when I18N::__bindTextDomain() is called for the first time. If a translation file is found it is set to false again
-
$category
publicstring
Current category of translation -
$domain
publicstring
Current domain of translation -
$l10n
publicI10n
Instance of the I10n class for localization
Method Summary
-
__bindTextDomain() public
Binds the given domain to a file in the specified directory. -
__loadLocaleDefinition() public
Parses a locale definition file following the POSIX standard -
__loadMo() public
Loads the binary .mo file for translation and sets the values for this translation in the var I18n::__domains -
__loadPo() public
Loads the text .po file for translation and sets the values for this translation in the var I18n::__domains -
__parseLiteralValue() public
Auxiliary function to parse a symbol from a locale definition file -
__pluralGuess() public
Attempts to find the plural form of a string. -
__translateTime() public
Returns a Time format definition from corresponding domain -
clear() public
Clears the domains internal data array. Useful for testing i18n. -
getInstance() public
Return a static instance of the I18n class -
translate() public
Used by the translation functions in basics.php Can also be used like I18n::translate(); but only if the App::import('I18n'); has been used to load the class.
Method Detail
__bindTextDomain() public ¶
__bindTextDomain( string $domain )
Binds the given domain to a file in the specified directory.
Parameters
- string $domain
- Domain to bind
Returns
Domain binded
__loadLocaleDefinition() public ¶
__loadLocaleDefinition( resource $file , string $domain = null )
Parses a locale definition file following the POSIX standard
Parameters
- resource $file
- file handler
- string $domain optional null
- Domain where locale definitions will be stored
__loadMo() public ¶
__loadMo( resource $file , string $domain )
Loads the binary .mo file for translation and sets the values for this translation in the var I18n::__domains
Parameters
- resource $file
- Binary .mo file to load
- string $domain
- Domain where to load file in
__loadPo() public ¶
__loadPo( resource $file , string $domain )
Loads the text .po file for translation and sets the values for this translation in the var I18n::__domains
Parameters
- resource $file
- Text .po file to load
- string $domain
- Domain to load file in
Returns
Binded domain elements
__parseLiteralValue() public ¶
__parseLiteralValue( string $string )
Auxiliary function to parse a symbol from a locale definition file
Parameters
- string $string
- Symbol to be parsed
Returns
parsed symbol
__pluralGuess() public ¶
__pluralGuess( string $header , integrer $n )
Attempts to find the plural form of a string.
Parameters
- string $header
- Type
- integrer $n
- Number
Returns
plural match
__translateTime() public ¶
__translateTime( string $format , string $domain )
Returns a Time format definition from corresponding domain
Parameters
- string $format
- Format to be translated
- string $domain
- Domain where format is stored
Returns
translated format string if only value or array of translated strings for corresponding format.
translate() public ¶
translate( string $singular , string $plural = null , string $domain = null , string $category = 6 , integer $count = null )
Used by the translation functions in basics.php Can also be used like I18n::translate(); but only if the App::import('I18n'); has been used to load the class.
Parameters
- string $singular
- String to translate
- string $plural optional null
- Plural string (if any)
- string $domain optional null
- Domain The domain of the translation. Domains are often used by plugin translations
- string $category optional 6
- Category The integer value of the category to use.
- integer $count optional null
- Count Count is used with $plural to choose the correct plural form.
Returns
translated string.
Methods inherited from Object
Object() public ¶
Object( )
A hack to support __construct() on PHP 4 Hint: descendant classes have no PHP4 class_name() constructors, so this constructor gets called first and calls the top-layer __construct() which (if present) should call parent::__construct()
Returns
__openPersistent() public ¶
__openPersistent( string $name , string $type = null )
Open the persistent class file for reading Used by Object::_persist()
Parameters
- string $name
- Name of persisted class
- string $type optional null
- Type of persistance (e.g: registry)
_persist() public ¶
_persist( string $name , string $return , $object , $type = null )
Checks for a persistent class file, if found file is opened and true returned If file is not found a file is created and false returned If used in other locations of the model you should choose a unique name for the persistent file There are many uses for this method, see manual for examples
Parameters
- string $name
- name of the class to persist
- string $return
- $object the object to persist
- $object
- $type optional null
Returns
Success
_savePersistent() public ¶
_savePersistent( string $name , object $object )
You should choose a unique name for the persistent file
There are many uses for this method, see manual for examples
Parameters
- string $name
- name used for object to cache
- object $object
- the object to persist
Returns
true on save, throws error if file can not be created
_set() public ¶
_set( array $properties = array() )
Allows setting of multiple properties of the object in a single line of code. Will only set properties that are part of a class declaration.
Parameters
- array $properties optional array()
- An associative array containing properties and corresponding values.
_stop() public ¶
_stop( $status = 0 )
Stop execution of the current script. Wraps exit() making testing easier.
Parameters
- $status optional 0
- http://php.net/exit for values
cakeError() public ¶
cakeError( string $method , array $messages = array() )
Used to report user friendly errors. If there is a file app/error.php or app/app_error.php this file will be loaded error.php is the AppError class it should extend ErrorHandler class.
Parameters
- string $method
- Method to be called in the error class (AppError or ErrorHandler classes)
- array $messages optional array()
- Message that is to be displayed by the error class
Returns
message
dispatchMethod() public ¶
dispatchMethod( string $method , array $params = array() )
Calls a method on this object with the given parameters. Provides an OO wrapper
for call_user_func_array
Parameters
- string $method
- Name of the method to call
- array $params optional array()
- Parameter list to use when calling $method
Returns
Returns the result of the method call
log() public ¶
log( string $msg , integer $type = LOG_ERROR )
Convience method to write a message to CakeLog. See CakeLog::write() for more information on writing to logs.
Parameters
- string $msg
- Log message
- integer $type optional LOG_ERROR
- Error type constant. Defined in app/config/core.php.
Returns
Success of log write
requestAction() public ¶
requestAction( mixed $url , array $extra = array() )
Calls a controller's method from any location. Can be used to connect controllers together or tie plugins into a main application. requestAction can be used to return rendered views or fetch the return value from controller actions.
Parameters
- mixed $url
- String or array-based url.
- array $extra optional array()
- if array includes the key "return" it sets the AutoRender to true.
Returns
Boolean true or false on success/failure, or contents of rendered action if 'return' is set in $extra.
toString() public ¶
toString( )
Object-to-string conversion. Each class can override this method as necessary.
Returns
The name of this class
Properties detail
$__categories ¶
Set to true when I18N::__bindTextDomain() is called for the first time. If a translation file is found it is set to false again
array( 'LC_ALL', 'LC_COLLATE', 'LC_CTYPE', 'LC_MONETARY', 'LC_NUMERIC', 'LC_TIME', 'LC_MESSAGES' )
$__domains ¶
Translation strings for a specific domain read from the .mo or .po files
array()
$__noLocale ¶
Set to true when I18N::__bindTextDomain() is called for the first time. If a translation file is found it is set to false again
false