Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Программирование > PHP

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 27.11.2001, 06:54
ihorko вне форума Посмотреть профиль Отправить личное сообщение для ihorko Посетить домашнюю страницу ihorko Найти все сообщения от ihorko
  № 1  
ihorko
Теоретик и Практик
 
Аватар для ihorko

Регистрация: Mar 2001
Адрес: Київ, .NET.UA
Сообщений: 1,173
Отправить сообщение для ihorko с помощью ICQ Отправить сообщение для ihorko с помощью AIM Отправить сообщение для ihorko с помощью Yahoo
Attention типа по темплейтам с языками

здарова всем
предупреждаю сразу, я - ЛАМЕР!
значит проблема вот в чем: надо сайт на 3х языках (en-ru-ua), но писать три варианта со своими файлами - как минимум тупо. думаю сделать так: есть три файла .dat (ua*, ru*, en*), d в которых соответственно все текстовки по сайту на соотв. языках. Все вроде бы понятно, и даже вроде бы умно. Только не могу допереть, как оно делается... как все это связать в систему... мануалы меня запутали вообще, 3 суток долблюсь с коктейлями php+mysql... не знаю, может поспать сутки-вторые? а то никакого решения мой мозг уже не видит...

помогите, плиииииииииииииииииз!
__________________
nothing | жежо

Старый 27.11.2001, 10:45
DeepDiver вне форума Посмотреть профиль Отправить личное сообщение для DeepDiver Найти все сообщения от DeepDiver
  № 2  
DeepDiver

Регистрация: Oct 2000
Адрес: Подмосковье
Сообщений: 637
Отправить сообщение для DeepDiver с помощью ICQ
сделай такую маленькую феньку - строковый ресурс.
пример файла ru.dat:

str1=строка первая
str2=строка вторая
str3=строка третья

теперь напишем функцию их загрузки:
Код:
//Возвращаем в $StrArray
function LoadStrResource($lang,&$StrArray){
  $StrArray= array();
  $fname = strtolwer($lang).".dat";
  if (!is_readable($fname) || ! is_file($fname)) return false;
  $f = file($fname);
  for ($i=0;$i<count($f);$i++){
    $x = strpos($f[$i],'=');
    if ($x==false) continue;
    $name = trim(substr($f[$i],0,$x));
    $value = trim(substr($f[$i],$x+1));
    $StrArray[$name] = $value;
  };
 return true;
};

//теперь при запуске скрипта мы первым делом запускаем эту функцию
if (!LoadStrResource($lang,$msg)) {
  print "Can`t load string resource!";
  exit;
};

//После этого чтобы вывести строку "строка первая" пишешь так:
print $msg['str1'];
Вот и все! Это наиболее долги (по загрузке) вариант. Можно сделать все немного проще. Файл ru.dat можно запсать сразу так:
<? //тэги необходимы!
$msg['str1'] = "строка первая";
$msg['str2'] = "строка вторая";
$msg['str3'] = "строка третья";
?>

Для загрузки такого ресурса необходимо всего лишь сделать таку вещь: include $lang.".dat"; и все! Но, как ты сам понимаешь, сами файлы ресурсов писать несколько сложнее...

Ну вот и все, осталось только написать файлы ресурсов для нужных тебе языков - и вперед!
__________________
Не ошибается то, что не работает. (с) Windows

Создать новую тему   Часовой пояс GMT +4, время: 06:59.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 06:59.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.