OldEr'S Blog

Xenforo и кодировка при конвертации

Конвертировал vBulletin в Xenforo и столкнулся с проблемой, что даже при указании явной кодировки utf-8 при импорте, и корректном хранении всех данных vBulletin в utf-8, всё равно получаем кракозябры после импорта. После недолгих поисков в одном из скриптов импортера, а именно library/XenForo/Importer/Abstract.php была найдена функция _convertToUtf8, которая все импортируемые данные "насильно" пытается конвертировать в utf-8, чем и вызывает вышеупомянутую проблему. Следовательно, отучаем её это делать. = )

Из файла library/XenForo/Importer/Abstract.php вырезаем следующий кусочек кода:

// note: assumes charset is ascii compatible
if (preg_match('/[\x80-\xff]/', $string))
{
if (function_exists('iconv'))
{
$string = @iconv($this->_charset, 'utf-8//IGNORE', $string);
}
else if (function_exists('mb_convert_encoding'))
{
$string = mb_convert_encoding($string, 'utf-8', $this->_charset);
}
}

и сохраняем. Повторяем процесс импорта.

Связано с категорией: MySQL, vBulletin Оставить комментарий
Комментарии (0) Пинги (0)

Пока нет комментариев.


Оставить комментарий


Включите изображения, чтобы увидеть вопрос *

Нет обратных ссылок на эту запись.