Чем распарсить большой XML?

Frol

Новичок
тоесть ты не можешь написать читаемый код?
и сделать чтоб он автоматом символы конвертил?
так бы и сказал сразу.
 

dub

Новичок
eugef
К стате, если надо просто распарсить xml стандартной, заданной структуры, и залить в БД, и все под 4-й php. то идея самописного парсера. не так уж и плоха, да и перейти на 5-й не составит труда. :) из личного опыта скажу, что 50 мегов парсилось нормально ничего не вешало(вернее не критично).
tug
Правда, на самом деле, хочется чего-то чтобы все делало, с поддержкой xpath.
Интересно еще бы знать - что, чего и за сколько, на какой машине и как парсит.
Вобще я думаю если есть возможность, то лучше переходить на php 5.1.2, пора...
 

eugef

Новичок
dub
К стате, если надо просто распарсить xml стандартной, заданной структуры, и залить в БД, и все под 4-й php. то идея самописного парсера. не так уж и плоха
Может и не плоха, но таких парсеров в инете - пруд-пруди, какой из них выбрать? Есть ли смысл писать свой парсер под какую-то определенную структуру?

Идеальный вариант - быстрый парсер, который перегоняте XML в ассоциативный массив - а дльше делай с массивом все что хочешь. (кстати массивы много памяти под себя требуют?)
 

dimgel

Новичок
Бу-га-га :)))) 50 метров в массиве много будет памяти требовать? ;)
 

eugef

Новичок
В общем послушал я умных людей - и решил сам написать класс для парсинга файла используя Expat (SAX).
Так как структура файла известна - проблем не должно составить.

А то DOMIT действительно память жрет немеренно - для парсинга 1мб сжирает 30мб! Правда потом назад возвращает, но все равно это не годиться.
 

Alexandre

PHPПенсионер
кстати массивы много памяти под себя требуют?
на много больше, чем если бы это были бы просто Сишные массивы.

Массив в РНР организован как хеш таблица, то этому он памяти берет на много больше, чем просто место в памяти, отведенное под переменные массива. (не получилось масло масленное?)

-~{}~ 18.04.06 14:02:

по этому 30 мег текста может вылиться в 50 Мег памяти на массив
 

tug

Новичок
тоесть ты не можешь написать читаемый код?
и сделать чтоб он автоматом символы конвертил?
так бы и сказал сразу.
Да я просто новичёк ещё и не подумал, что php программист это профессия, которая заключается в повторном изобретении колес и велосипедов...

Ну если молотка нет, то придётся конечно микроскопом гвозди забивать.
 

eugef

Новичок
tug
Да я просто новичёк ещё и не подумал, что php программист это профессия, которая заключается в повторном изобретении колес и велосипедов...
Я тоже поначалу думал - зачем, если куча готовых решений, писать свое, а потом понял - использовать чужой код гараздо сложнее чем написать свое (имхо).

-~{}~ 08.06.06 13:46:

После того как я релализовал парсер для своей структуры xml-файла - получил слудуюущую скорость
за 1,6 с я распарсиваю 1,2 мб и заливаю их в базу!

для сравнения Используя DOMITlight и Expat я только распарсил 1мб за 2,5 секунды.
 
Сверху