Перейти к контенту
  • 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М -- менял скопом. В любом случае спасибо)

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

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

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

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

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

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

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

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

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