Forum Webscript.Ru

Программирование => PHP => Тема начата: Mefisto от 09 Апреля 2007, 23:46:02

Название: импорт большого файла xls
Отправлено: Mefisto от 09 Апреля 2007, 23:46:02
есть замечательная штука - класс PHP-ExcelReader, которая отлично разбирает xls файлы

а что делать если xls файл содержит 10 000 строк (1.8 мегабайт)?

строки кода

$data = new Spreadsheet_Excel_Reader();
$data->read(\'import.xls\');
 

вешают локальный сервер намертво...

как быть? выход только в csv? или есть другие варианты (например, разбор части файла, для поэтапного импорта)?

спасибо за ответы
Название: импорт большого файла xls
Отправлено: Макс от 10 Апреля 2007, 12:01:03
такие вещи (обработка большого объема данных) лучше делать через php-cli (если хостер позволяет)
Название: импорт большого файла xls
Отправлено: Mefisto от 10 Апреля 2007, 22:13:04
Цитировать
такие вещи (обработка большого объема данных) лучше делать через php-cli (если хостер позволяет)


:)

этот класс вешает мой локальный сервер, на хостинге в интернете даже пробовать не стал
Название: импорт большого файла xls
Отправлено: USE от 12 Апреля 2007, 11:02:12
Цитировать
Mefisto:
выход только в csv

Выход. Но может быть у Вас ошибки в коде, что сервер вешается намертво?

Файлы меньшего размера проходят нормально?
Структура у файлов такая же?
Название: импорт большого файла xls
Отправлено: Макс от 12 Апреля 2007, 15:15:08
Цитировать
Mefisto:
этот класс вешает мой локальный сервер

под сервером ты имеешь ввиду железо (комп) или веб-сервер (apache например) или что-то еще ?
Название: импорт большого файла xls
Отправлено: Mefisto от 12 Апреля 2007, 22:36:47
Цитировать
Файлы меньшего размера проходят нормально?
Структура у файлов такая же?


да, меньшие файлы проходят нормально

Цитировать
под сервером ты имеешь ввиду железо (комп) или веб-сервер (apache например) или что-то еще ?


ну во первых скрипт не выполняется до конца, а во сторых комп начинает тормозить

короче, справились при помощи csv

хотя для файлов с 1000-3000 записей например PHP-ExcelReader штука отличная