From 8ede1a2ecbb62577afd32996956c5feaf7ddf9b6 Mon Sep 17 00:00:00 2001 From: Derek Jones Date: Wed, 5 Oct 2011 13:34:52 -0500 Subject: replacing the old HTML user guide with a Sphinx-managed user guide --- user_guide_src/source/libraries/language.rst | 88 ++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 user_guide_src/source/libraries/language.rst (limited to 'user_guide_src/source/libraries/language.rst') diff --git a/user_guide_src/source/libraries/language.rst b/user_guide_src/source/libraries/language.rst new file mode 100644 index 000000000..a148d5a0d --- /dev/null +++ b/user_guide_src/source/libraries/language.rst @@ -0,0 +1,88 @@ +############## +Language Class +############## + +The Language Class provides functions to retrieve language files and +lines of text for purposes of internationalization. + +In your CodeIgniter system folder you'll find one called language +containing sets of language files. You can create your own language +files as needed in order to display error and other messages in other +languages. + +Language files are typically stored in your system/language directory. +Alternately you can create a folder called language inside your +application folder and store them there. CodeIgniter will look first in +your application/language directory. If the directory does not exist or +the specified language is not located there CI will instead look in your +global system/language folder. + +.. note:: Each language should be stored in its own folder. For example, + the English files are located at: system/language/english + +Creating Language Files +======================= + +Language files must be named with _lang.php as the file extension. For +example, let's say you want to create a file containing error messages. +You might name it: error_lang.php + +Within the file you will assign each line of text to an array called +$lang with this prototype:: + + $lang['language_key'] = "The actual message to be shown"; + +.. note:: It's a good practice to use a common prefix for all messages + in a given file to avoid collisions with similarly named items in other + files. For example, if you are creating error messages you might prefix + them with error\_ + +:: + + $lang['error_email_missing'] = "You must submit an email address"; $lang['error_url_missing'] = "You must submit a URL"; $lang['error_username_missing'] = "You must submit a username"; + +Loading A Language File +======================= + +In order to fetch a line from a particular file you must load the file +first. Loading a language file is done with the following code:: + + $this->lang->load('filename', 'language'); + +Where filename is the name of the file you wish to load (without the +file extension), and language is the language set containing it (ie, +english). If the second parameter is missing, the default language set +in your application/config/config.php file will be used. + +Fetching a Line of Text +======================= + +Once your desired language file is loaded you can access any line of +text using this function:: + + $this->lang->line('language_key'); + +Where language_key is the array key corresponding to the line you wish +to show. + +Note: This function simply returns the line. It does not echo it for +you. + +Using language lines as form labels +----------------------------------- + +This feature has been deprecated from the language library and moved to +the lang() function of the :doc:`Language +helper <../helpers/language_helper>`. + +Auto-loading Languages +====================== + +If you find that you need a particular language globally throughout your +application, you can tell CodeIgniter to +:doc:`auto-load <../general/autoloader>` it during system +initialization. This is done by opening the +application/config/autoload.php file and adding the language(s) to the +autoload array. + + -- cgit v1.2.3-24-g4f1b From d095adf82baa420e3702c838f6fd7c55479f643a Mon Sep 17 00:00:00 2001 From: Derek Jones Date: Wed, 5 Oct 2011 15:55:20 -0500 Subject: fixed code block spacing on Language and JS lib docs --- user_guide_src/source/libraries/language.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'user_guide_src/source/libraries/language.rst') diff --git a/user_guide_src/source/libraries/language.rst b/user_guide_src/source/libraries/language.rst index a148d5a0d..ec678cd21 100644 --- a/user_guide_src/source/libraries/language.rst +++ b/user_guide_src/source/libraries/language.rst @@ -39,7 +39,9 @@ $lang with this prototype:: :: - $lang['error_email_missing'] = "You must submit an email address"; $lang['error_url_missing'] = "You must submit a URL"; $lang['error_username_missing'] = "You must submit a username"; + $lang['error_email_missing'] = "You must submit an email address"; + $lang['error_url_missing'] = "You must submit a URL"; + $lang['error_username_missing'] = "You must submit a username"; Loading A Language File ======================= -- cgit v1.2.3-24-g4f1b