Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: php_gettext + php_iconv. Internationalization. Как очистить кэш?

Сообщения:  [1-5] 

 
 автор: Sergey Ivanov   (17.01.2007 в 19:03)   письмо автору
 
   для: Sergey Ivanov   (17.01.2007 в 10:26)
 

Люди, помогите!!! Пожалуйста!
При изменении перевода продолжается вывод старых строк (детали см. выше). Спасает только рестарт Апача, но этот вариант не проходной.

Спецы по gettext, отзовитесь!

   
 
 автор: Sergey Ivanov   (17.01.2007 в 15:11)   письмо автору
 
   для: Sergey Ivanov   (17.01.2007 в 10:26)
 

Проблема решилась созданием двух конфигураций для каждого языка.


config_ru.php
<?php
putenv
("LANG=ru_RU");
setlocale(LC_ALL"Russian");
$domain 'messages';
bindtextdomain($domain"./locale");
textdomain($domain);
bind_textdomain_codeset($domain"cp1251");
?>



config_en.php
<?php
putenv
("LANG=en_US");
setlocale(LC_ALL"American");
$domain 'messages';
bindtextdomain($domain"./locale");
textdomain($domain);
bind_textdomain_codeset($domain"iso-8859-1");
?>


и соответствующих им файлов messages.mo и messages.po.

При этом сами строки в скриптах, видимо, придется записать в виде


$str = 'some_text_to_translate';


Надеюсь, это кому-нибудь поможет.

   
 
 автор: Sergey Ivanov   (17.01.2007 в 12:23)   письмо автору
 
   для: XPraptor   (17.01.2007 в 12:00)
 

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

   
 
 автор: XPraptor   (17.01.2007 в 12:00)   письмо автору
 
   для: Sergey Ivanov   (17.01.2007 в 10:26)
 

Вот начало любого файла на пхп. Тут указана и дата создания файла (что он свежий) и запрет кэширования.

<?php
Header("Expires: Thu, 19 Feb 1998 13:24:18 GMT");
Header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
Header("Cache-Control: no-cache, must-revalidate");
Header("Cache-Control: post-check=0,pre-check=0");
Header("Cache-Control: max-age=0");
Header("Pragma: no-cache");
?>

   
 
 автор: Sergey Ivanov   (17.01.2007 в 10:26)   письмо автору
 
 

Здравствуйте!
Используя расширение php_gettext и php_iconv для разработки многоязыкового интерфейса, столкнулся с проблемой: запускаю код (он приведен ниже), получаю нужный результат - то есть осуществляется вывод текста на усском языке. Но в случае изменения перевода, то есть при создании новых файлов messages.mo и messages.po, не происходит изменений при выводе. Похоже имеется кэш. Прошу специаслистов и просто людей знакомых с данными расширениями помочь мне решить проблему с обновлением перевода.
Заранее благодарю.


<?php
putenv
("LANG=ru_RU");
setlocale(LC_ALL"Russian");
$domain 'messages';
bindtextdomain($domain"./locale");
textdomain($domain);
bind_textdomain_codeset($domain"cp1251");

echo 
_("Some text in appropriate language.");
?>

   

Сообщения:  [1-5] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования