Как я могу заставить CodeIgniter работать с несколькими языками, используя файлы JSON?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как я могу заставить CodeIgniter работать с несколькими языками, используя файлы JSON?

Сообщение Anonymous »

У меня есть сценарий, который, хотя и имеет возможность многоязычности, спроектирован таким образом, что для всех пользователей можно настроить только один язык, у меня есть несколько файлов JSON с переведенными сообщениями, и я могу выбрать только один язык.

Выбранный язык затем записывается в БД и доступен через вспомогательный файл:

Код: Выделить всё

if ( ! function_exists('get_phrase'))
{
function get_phrase($phrase = '') {
$CI =&  get_instance();
$CI->load->database();
$language_code = $CI->db->get_where('settings' , array('key' => 'language'))->row()->value;
$key = strtolower(preg_replace('/\s+/', '_', $phrase));
$langArray = openJSONFile($language_code);
if (array_key_exists($key, $langArray)) {
} else {
$langArray[$key] = ucfirst(str_replace('_', ' ', $key));
$jsonData = json_encode($langArray, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
file_put_contents(APPPATH.'language/'.$language_code.'.json', stripslashes($jsonData));
}

return $langArray[$key];
}
Что мне нужно, так это способ, с помощью которого пользователь может выбрать желаемый язык, и этот выбор будет сохранен в сеансе, чтобы разные пользователи могли использовать разные языки.

Я не разбираюсь в CodeIgniter, поэтому буду признателен за пошаговые изменения и расположение изменяемых файлов.

Я провел небольшое исследование базовой многоязычности CodeIgniter поддерживаются, но все они основаны на другом подходе, который используется в этом скрипте, с использованием перехватчиков и каталогов для языков.

Подробнее здесь: https://stackoverflow.com/questions/620 ... json-files
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»