Слетает кодировка, когда я пытаюсь считать Excel файл при помощи PHP
Всем привет, я столкнулся со следующей проблемой. У меня есть файл parser.xls, когда я пытаюсь его считать при помощи PHP, слетает кодировка и на экране появляются т.н. "кракозябры". Вверху скрипта поставил проверку, что бы узнать поддерживается ли кодировка UTF-8, исключения не выбросило. `
const PAGE_ENCODING = 'UTF-8';
if (mb_internal_encoding(PAGE_ENCODING) != PAGE_ENCODING) {
throw new Exception('Encoding not supported: ' . PAGE_ENCODING);
}
$filename = 'parser.xls';
$fileContent = file_get_contents($filename);
var_dump($fileContent);
` Я знаю, что можно изменить разрешение excel файла на .csv, но есть ещё какой-либо способ считать этот файл именно в формате .xls. Т.к необходимо что бы файл, не подвергался каким-либо изменениям.
Ответы (1 шт):
Вы не сможете правильно прочесть Excel файл с помощью функции file_get_contents(), поскольку она читает файл как текст, а не как электронную таблицу. Вам нужно воспользоваться какой-либо php - библиотекой для чтения файла Excel, например, как написано здесь или здесь.