Работа PhpExcel вместе с Битрикс

Добрый день. У меня возникла проблема с работой excel5 (.xls, Excel 2003) через PhpExcel. А Excel2007 и CSV работают нормально.
При чтение .xls файлов выдает ошибку:
ErrorException [ Notice ]: Uninitialized string offset: 339
В какой-то момент в функцию function _GetInt4d($data, $pos) посылается $data нулевой длины, причину выяснить не получилось. В гугле нашел пару решений связанных с конфигурацией сервера:
mbstring.func_overload 0
mbstring.internal_encoding=ISO-8859-1
Но эти параметры важны для работы Битрикс(менять нельзя).

Заказчик захотел, чтобы моя система была расположена на одном хостинге с Битрикс, просто в отдельной папке. Система написана на Kohana.

Пытался использовать класс PHP Excel Reader. Выводит следующую ошибку:
The filename /var/www/vhosts/test89.ru/httpdocs/parser/Upload/mailexcel/SB.xls is not readable
Не проходит проверку: if (substr($this->data, 0, 8) != IDENTIFIER_OLE)
При сравнение в браузере также не совпадали.
Если за комментировать эту проверку, то выводит:
ErrorException [ Notice ]: Undefined property: OLERead::$wrkbook

Если отключить вывод ошибок, то нет ответа.
  • Вопрос задан
  • 7393 просмотра
Пригласить эксперта
Ответы на вопрос 2
Локально/на другом сервере это работает? Можно использовать ini_set, что бы изменить параметры до выполнения скрипта и вернуть назад после, например так:
ini_set('mbstring.internal_encoding', 'UTF-8');

Ну и вы в курсе, что PhpExcel - это для совсем маленький файлов? Для больших лучше использовать АПИ LibreOffice.
Ответ написан
@DimaRaduck91 Автор вопроса
На локальном хостинге все работает нормально.
ini_set('mbstring.internal_encoding', 'UTF-8'); не работает с версией PHP 5.2, с .htaccess также.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы