Перейти к контенту
  • 0

Битые файлы языкового кеша


Вопрос

Привет!
Приобрёл xml локализации тут: http://community.invisionpower.com/files/file/6735-russian-language-pack-for-ipboard-xml-language-pack-only/
Загрузил, выбрал русский дефолтным, но все скрипты в /var/www/board/upload/cache/lang_cache/4/ "битые".

То есть все массивы с элементами перевода не закрыты, что собсна ошибку и вызывает. 

С чем это может быть связано?
Можно закрыть ручками, но непонятно сколько элементов в каждом блоке пропадёт...

Версия 3.4.6

Изменено пользователем IBResource
Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

						fwrite( $fh, $to_write, strlen( $to_write ) );
						fclose( $fh );
Вот и весь код.

 

Единственное место, где тонко - strlen( $to_write ) . Могу предположить, что у вас mbstring.func_overload установлена больше 1 . Желательно ставить 0 .

 

http://www.php.net/manual/en/mbstring.configuration.php

 

В 4.3 >= php >= 5.2.6 эта функция выставляется только в php.ini (PHP_INI_SYSTEM) в более новых версиях относится к PHP_INI_PERDIR , значит может быть выставлена для отдельной папки через php.ini, .htaccess, конфиг апача или .user.ini .

  • Лайк 1
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Странно это как-то. Пак идет в xml. Если xml битый, то он не импортируется. А здесь получается все импортировано, но при создании кеша что-то сбоит. Пак тут, скорее всего, ничем повлиять не может. 
А можно кусочек файла кеша?
 

Ссылка на комментарий
Поделиться на других сайтах

  • 0
'sent_new_convo' => " хочет начать личную беседу с вами",
'set_fave_button' => "%s",
'set_mobile_theme' => "Использовать мобильную версию",
'sf_bytes' => "байт",
'sf_gb' => "ГБ",
'sf_k' => "К",
'sf_mb' => "МБ",
'sign_in' => "Войти",
'sj_help' => "Помощь",
'sj_home
----------------------------------------------------------------

'_laquo' => "«",
'_larr' => "←",
'_raquo' => "»",
'_rarr' => "→",
'_rssimportcode' => "Code: ",
'_rssimportnotoc' => "No title or content",
'_rssimportsource' => "Source",
'_stopwords_' => "about,all,and,been,can,cant,for,has,here,just,me,new,next,not,old,out,our,said,saw,that,thats,the,their,then,theyll,this,was,were,well,will,with,what,what


Обрывается в произвольном месте, независимо от размера файла.
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Я 

 

Странно это как-то. Пак идет в xml. Если xml битый, то он не импортируется. А здесь получается все импортировано, но при создании кеша что-то сбоит. Пак тут, скорее всего, ничем повлиять не может. 
А можно кусочек файла кеша?
 

Я так понял, что при импорте языкового пакета, данные сначала идут в БД, а уже потом генерятся файлы кеша. То есть проблема в скрипте, который их генерит?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Да, информация импортируется в БД. Потом можно зеленой кнопочкой http://clip2net.com/clip/m164909/thumb640/1394034527-clip-25kb.png  кеш пересоздавать сколько угодно. Что-то мешает. Может антивирус какой-то злой или еще чего. Попробуйте перекешировать несколько раз, результат случайный?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Да, информация импортируется в БД. Потом можно зеленой кнопочкой http://clip2net.com/clip/m164909/thumb640/1394034527-clip-25kb.png  кеш пересоздавать сколько угодно. Что-то мешает. Может антивирус какой-то злой или еще чего. Попробуйте перекешировать несколько раз, результат случайный?

Нет, на одном и том же месте режется...

Ссылка на комментарий
Поделиться на других сайтах

  • 0

А на чем режется, может на круглой цифре размера, может на кавычке какой-то или еще каком символе ?
Вот последняя версия пака на хостинге ипс http://ibresource.invisionconnect.com/ . Глюков с кешем языка нету. 
А оригинальный язык если перекешировать, тоже рвет?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

А на чем режется, может на круглой цифре размера, может на кавычке какой-то или еще каком символе ?

Вот последняя версия пака на хостинге ипс http://ibresource.invisionconnect.com/ . Глюков с кешем языка нету. 

А оригинальный язык если перекешировать, тоже рвет?

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

 

Обрезается на произвольном символе...

Ссылка на комментарий
Поделиться на других сайтах

  • 0
						fwrite( $fh, $to_write, strlen( $to_write ) );
						fclose( $fh );
Вот и весь код.

 

Единственное место, где тонко - strlen( $to_write ) . Могу предположить, что у вас mbstring.func_overload установлена больше 1 . Желательно ставить 0 .

 

http://www.php.net/manual/en/mbstring.configuration.php

 

В 4.3 >= php >= 5.2.6 эта функция выставляется только в php.ini (PHP_INI_SYSTEM) в более новых версиях относится к PHP_INI_PERDIR , значит может быть выставлена для отдельной папки через php.ini, .htaccess, конфиг апача или .user.ini .

 

Помогло либо это, либо увеличение памяти до 128М -- менял скопом. В любом случае спасибо)

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.