За последние 24 часа нас посетили 18732 программиста и 1603 робота. Сейчас ищут 869 программистов ...

Многоязычность в html шаблонах

Тема в разделе "Прочие вопросы по PHP", создана пользователем vanwailder, 16 май 2009.

  1. vanwailder

    vanwailder Активный пользователь

    С нами с:
    16 май 2009
    Сообщения:
    5
    Симпатии:
    0
    Суть вопроса такова, есть ли у кого идеи как реализовать мультиязычность в подключаемых в php скрипт - html шаблонах!

    Приведу небольшой пример

    Примерный листинг index.php

    Код (Text):
    1.  
    2. <?php
    3. include "menu.html";
    4. ?>
    Примерный листинг menu.html

    Код (Text):
    1.  
    2. <div class="menu">
    3. <a href="#">_MENU1</a><a href="#">_MENU2</a><a href="#">_MENU3</a>
    4. </div>
    В итоге что нужно, нужно чтобы в html шаблоне вообще небыло php скриптов, но при этом _MENU1 при выборе языка "рус" "eng" "укр" отображался соответствующий язык, Главная - Home - Головна, и т.д.
    Вообщем я думаю суть ясна, кто что посоветует! И возможно ли подобное вообще! :?: Буду очень признателен!
     
  2. iliavlad

    iliavlad Активный пользователь

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    Сделать 3 файла и в index.php подключать соответствующий.
    Но это будет плохо - при внесении изменений в один из файлов надо будет не забывать менять другие.

    Еще можете зайти в папку apache/error и посмотреть как там сделано.
     
  3. Psih

    Psih Активный пользователь
    Команда форума Модератор

    С нами с:
    28 дек 2006
    Сообщения:
    2.678
    Симпатии:
    6
    Адрес:
    Рига, Латвия
    узнать о таком слове как gettext
     
  4. Koc

    Koc Активный пользователь

    С нами с:
    3 мар 2008
    Сообщения:
    2.253
    Симпатии:
    0
    Адрес:
    \Ukraine\Dnepropetrovsk
    кстати, где лучше всего хранить переводы: в базе/файле? Что б потом можно было их редактировать нормально.
     
  5. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    У меня оргаизованы лангпаки через БД, но:
    каждый из файлов обязательно генерирует РНР-файл, содержащий массив из всех строк таблицы, имеющих языковую метку.
    Очень удобно редактировать языки из админки, создавать паки через веб-интерфейс.
    А сохраняем когда, создается обычный РНР-файл с языком.

    Кстати, структура языка хранится в отдельной таблице и является кешируемой.
    Там содержится кодировка, языковой файл (спецификация), название языка, название с админки и т.д.
     
  6. kostyl

    kostyl Guest

    Apple
    не понял, то есть при каждом запросе создается такой файл с языком???
     
  7. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Файл с языком создаётся только при его модификации из администраторского центра или в случае, если при запросе его не существует.
    В этом случае, даже если файл создать не удается, он будет всегда выводиться из БД, но также запишется предупреждение в лог.