Alexandre
PHPПенсионер
разные подходы. Как лучше?
есть XML ориентированная CMS ка на PHP 4 (libxml\libxslt)
выбирается информация из трех больших XML файлов.
из первого по дате выбираем соответсвующие блоки <b>
из второго по блокам выбираем итемы....
из третьего по итемам выбирается необходимая информация
В итоге должны получить расписание (от даты 1 до даты два) сгруппированные итемы, вернее данные из итемов.
Какие есть альтернативы
- Парсить Домом по очереди три XML ля (используя XPath), составить xml файл и сделать финальное XSLT преобразование (в HTML).
- сделать три поочереди XSLT преобразования.
- сделать одно сложное XSLT преобразование.
Остановился на втором варианте. Но при выполнении второго преобразования у меня уходит на парсинг 10 сек. Соответственно если делать одно большое преобразование, то из-за большого объема, боюсь, что просто сервак ляжет. (это отрабатывает на домашнем компе - не знаю как поведет себя на хостинге)
Отсюда напрашивается первый вариант - использовать ДОМ, что не хотелосьбы.... ужасно неудобно.
Хотелось бы услышать иные мнения.
есть XML ориентированная CMS ка на PHP 4 (libxml\libxslt)
выбирается информация из трех больших XML файлов.
из первого по дате выбираем соответсвующие блоки <b>
Код:
<root>
<day dt="1.1.2005">
<b id=.../>
...
</day>
<day dt="2.1.2005">
<b id=123/>
...
</day>
</root>
Код:
<root>
<block id="123">
<item id=777/>
<item id=778/>
...
</block>
<block id="124">
<item id=780/>
<item id=779/>
...
</block>
</root>
Код:
<root>
<item id="124">
<p=....>
<q=....>
</item >
<item id="125">....</item>
</root>
Какие есть альтернативы
- Парсить Домом по очереди три XML ля (используя XPath), составить xml файл и сделать финальное XSLT преобразование (в HTML).
- сделать три поочереди XSLT преобразования.
- сделать одно сложное XSLT преобразование.
Остановился на втором варианте. Но при выполнении второго преобразования у меня уходит на парсинг 10 сек. Соответственно если делать одно большое преобразование, то из-за большого объема, боюсь, что просто сервак ляжет. (это отрабатывает на домашнем компе - не знаю как поведет себя на хостинге)
Отсюда напрашивается первый вариант - использовать ДОМ, что не хотелосьбы.... ужасно неудобно.
Хотелось бы услышать иные мнения.