За последние 24 часа нас посетили 33002 программиста и 1821 робот. Сейчас ищут 872 программиста ...

Проблема с кодировкой при парсинге xls

Тема в разделе "Прочие вопросы по PHP", создана пользователем Phantik, 7 июл 2011.

  1. Phantik

    Phantik Активный пользователь

    С нами с:
    2 июл 2009
    Сообщения:
    163
    Симпатии:
    0
    Здравствуйте.
    Столкнулся с проблемой при парсинге xls(Excel) файлов.

    Задача состоит в том, что нужно в PHP скрипте из Excel таблиц считать данные и записать их в базу.

    Пробую парсить через класс:
    http://code.google.com/p/php-excel-reader/


    Код
    PHP:
    1.  
    2. <?php
    3. error_reporting(E_ERROR);
    4.  
    5. require_once 'excel_reader2.php';
    6.  
    7. $data = new Spreadsheet_Excel_Reader();
    8. $data->setOutputEncoding('WINDOWS-1251');
    9. $data->setUTFEncoder('iconv');
    10. $data->read('2.xls');
    11.  
    12. Header("Content-type:text/html;charset=WINDOWS-1251");
    13.  
    14. echo $data->dump(true,true);
    15. ?>
    16.  
    Все работает хорошо, за исключением того, что все ячейки с русскими словами, отображаются
    в виде "иероглифов".
    Может кто работал с этим классом и уже сталкивались с этой проблемой? А может порекомендуете другой
    способ парсить xls?

    Заранее спасибо.
     
  2. moroz

    moroz Активный пользователь

    С нами с:
    13 дек 2010
    Сообщения:
    33
    Симпатии:
    0
    попробуйте так:
    установите нужную кодировку
    1) <head......>
    2 )<meta......>
    3) открывать и записывать файл ТОЖЕ в той же кодировке
    4) в БД выбирать тоже ту же кодировку
     
  3. hren2

    hren2 Активный пользователь

    С нами с:
    27 июн 2011
    Сообщения:
    41
    Симпатии:
    0
    если не получится на крайний случай используй PEAR, он большее гибким является по работе с xls