i18n (интернационализация) в Fuel Views

Каков наилучший/предлагаемый способ обработки строк i18n (интернационализация) в представлениях для Fuel PHP? Я не могу найти какие-либо ссылки на это в документации и подумываю использовать gettext. Какие-либо предложения?


person Carl    schedule 05.12.2011    source источник


Ответы (1)


Вы можете использовать класс lang, вы можете использовать его для загрузки нужного языкового файла. Пример кода:

пример.php

return array(
    'hello' => 'Hello :name',
    'something'=> 'something :name!',
    'test'=> array(
        'hello' => 'Hello', 
        'something' => 'Plop'
    )
);

ваш файл

// Will load the file "example.php" into the "var" variable
Lang::load('example', 'var');

// Get the variable "something"
$this->output = Lang::get('var.test.something');

Вы можете создать файл на другом языке, например "en, it" или более, и динамически загружать файл на основе локальных настроек пользователя.

person Marco Pace    schedule 06.12.2011
comment
Одним из усовершенствований из журналов является использование Lang::get('var.test.something'), поскольку Lang::line() устарела. Также есть процедурный помощник __(). docs.fuelphp.com/classes/lang.html - person Carl; 10.12.2011
comment
Ммм, я искал Load::get в документации, но не нашел. Это модификация присутствует в ветке разработки? - person Marco Pace; 14.12.2011
comment
Боже мой, моя страница не загрузилась, поэтому я читаю только до конца загруженного контента -_-... Спасибо - person Marco Pace; 14.12.2011