![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
HappyLife |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 17.5.2006 Репутация: нет Всего: 8 |
Доброго времени суток уважаемые!
Совсем недавно реализовал хороший парсер XML документа с помощью SimpleXML. Все однотипные XML файлы обрабатывались как часы. Но клиент, сказал, что у него есть такого же формата XML файлы, но с верхним регистром тэгов и аттрибутов. И я уже голову сломал, как мне сделать парсерсинг этого файла не делая второй парсер, потому что формат тот же... но регистр другой! |
|||
|
||||
newbee |
|
|||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: нет Всего: 19 |
Если я не ошибаюсь, по стандарту XML регистр имен тегов и атрибутов должен быть нижним, так что клиент подсунул тебе что-то похожее на XML.
а) А почему нельзя изменить свой хороший парсер так, чтобы он съедал теги в верхнем регистре? б) Если в хорошем парсере все прибито гвоздями, сделай/найди препроцессор, который преобразует файл из верхнего регистра в нижний. -------------------- You're face to face With man who sold the world |
|||
|
||||
HappyLife |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 17.5.2006 Репутация: нет Всего: 8 |
a) В коде есть
Который придется заменять на
б) Менять нужно не весь файл, а только тэги! 1) Как вариант, можно попробовать регулярными выражениеми сделать замену тегов.. или 2) Сделать проверку каждого элемента, если нет в нижнем регистре то искать в верхнем.... Это сообщение отредактировал(а) HappyLife - 19.1.2012, 19:53 |
||||
|
|||||
newbee |
|
|||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: нет Всего: 19 |
А я это и имела в виду - пройтись по xml-дереву и поправить его.
-------------------- You're face to face With man who sold the world |
|||
|
||||
Sanchezzz |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1670 Регистрация: 19.11.2006 Где: Voronezh Репутация: 41 Всего: 60 |
я отказался от SimpleXML по 1 простой причине он не может парсить нестандартные xml и больших форматов у меня файл весил 50мб он загибался + некоторые атрибуты не выводил.
перешел на XMLReader
-------------------- Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |