Проблемы с кодировкой в Apache Tika wrapper для PHP
Есть задача - вытащить текст из файла и положить в бд для индексации. Для вытаскивания текста использую обертку на PHP для Apache Tika (https://github.com/NinoSkopac/PhpTikaWrapper).
Если вызывать метод из веба:
$text = TikaWrapper::getText('test.docx');
var_dump($text);
То все русские символы в файле отображаются как "?", при этом английский текст отображается нормально.
Запуская тот же самый скрипт из консоли - все русские символы отображаются нормально.
В чем может быть проблема и как это исправить? Крайне необходимо использовать библиотеку из веба.
Ответы (1 шт):
К сожалению не сразу, но нашел решение.
Я пытался ставить локаль на utf-8 с помощью setlocale(LC_ALL, 'ru_RU.utf8'), но это не давало эффекта.
Помогло использование putenv('LC_ALL=ru_RU.utf8'), честно говоря я не понял какая разница между setlocale и putenv, но это помогло мне.