Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
6 / 6 / 2
Регистрация: 30.05.2011
Сообщений: 37

Как раелизоавть многоязычность на сайте?

31.05.2011, 17:21. Показов 2179. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как всегда началось все с маленького блога... И захотелось мне сделать в нем выбор языка.. А вот как лучше это реализовать не знаю. Может кто то подскажет?
я думаю так реализовать создать папку lang и в ней файлы типа rus.php примерно содержать они будут массив.
PHP
1
2
3
4
5
6
7
8
9
<?php
  $lang=Array();
  $lang['Back']='Назад';
  $lang['Main page']='Главная страница';
  $lang['Select a category']='Выберете категорию';
  #$lang['']='';
  #$lang['']='';
  #$lang['']='';  
?>
Подключаем к нашему index.php и в меню где должно быть "Главная страница" писать
PHP
1
echo ( $lang['Main page']);
Но у меня чувство такое что этот подход не совсем правильный.. Так как при загрузке например просто первой страницы в массиве будут сотни лишних значений например соглашение всякие регистрационные данные итд итп. Может кто то делал уже такое и в двух словах скажет как это реализовать с большей экономией ресурсов.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.05.2011, 17:21
Ответы с готовыми решениями:

Как сделать многоязычность на сайте на js?
Добрый день, с наступившим новым годом)) Прошу подскажите, нужно сделать многозначность, не просто переключатель языков, а определение...

Как можно реализовать многоязычность на DLE?
Как можно реализовать многоязычность на DLE?

Многоязычность
Всем привет. Пишу программу и хотел бы добавить возможность переключения языка интерфейса. Как это можно реализовать?

3
 Аватар для hatsub
61 / 60 / 7
Регистрация: 25.05.2011
Сообщений: 388
31.05.2011, 18:18
Сделай так: для конкретного пользователя/гостя создается запись в db/куки в которой указывается ru/eng/... А при загрузке стр, если флаг пользователя/гостя == eng, то идет например require_once - там все переменные имеют англ. название: $lang['Main page']='Home Page'; иначе подгружается другой файл и $lang['Main page']='Главная стр';. Только учитывай, что все посты в блоге нужно в ручную переводить =)
0
6 / 6 / 2
Регистрация: 30.05.2011
Сообщений: 37
31.05.2011, 18:44  [ТС]
У меня так и реализовано..
Скрипт lang.php
проверяет есть ли значение в $_GET [lang] если есть оно проверяется на соответствие. Должно иметь не больше и не меньше 3 букв если все условия проходят проверку то в куки загоняется значения $_GET [lang] и с помощью инклуд подключается массив допустим (rus.php). В противном случаи смотрим что у нас в куках есть также проверяем данные если проверку непроходим(допустим в куках нет нечего или lang состоит больше чем 3 буквы или в нем есть какието символы) то чистим куки и опять даем им значение дефолтное (rus) и подключаем опять rus.php. Но если все же куки содержат правильное значение допустим eng. То подключаем eng.php

Но вот в чем проблема как то мне кажется это не изящный вариант. Так как в массиве хранятся сотни значений. А для генерации например формы где всего одна надпись доступ запрещен. Приходится подключать этот массив. Мне кажется что это сильно влияет на производительность. Я уверен что есть еще варианты реализации.. Кто знает?
0
 Аватар для hatsub
61 / 60 / 7
Регистрация: 25.05.2011
Сообщений: 388
31.05.2011, 18:49
Разбей массив не несколько более малых и подключай только нужные на данной странице. Более оптимального и рационального способа я не вижу.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.05.2011, 18:49
Помогаю со студенческими работами здесь

многоязычность
как вычислить с какой страны зашел человек и создать многоязычность? тоесть человек зашел с америки и ему тексты регистрации на его...

Многоязычность
Доброго времени суток. Пришло время когда мне необходимо сделать свою программу Windows Forms многоязычной. Думал как это можно реализовать...

многоязычность
если ктото сталкивался с многоязычностью то прошу подсказать - использую языки немецкий, французский, греческий, английский,...

Многоязычность сайта
Добрый день, проблема такова. 3dplitka.com необходимо сделать сайт мультиязычным. ничего сложного, но есть пару нюансов... wpml срабатывает...

Android многоязычность
Допустим не сложно с помощью if задать несколько вариантов надписей на кнопке. Но как определить какой язык главный на тедефоне клиента?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru