Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.136.19.141] |
|
Сообщ.
#1
,
|
|
|
Привет.
Не могу понять логику работы с xsltTransformContext. 1. Можно ли создать контекст как-то иначе, кроме как xsltNewTransformContext? 2. xsltNewTransformContext сразу же требует передать ему xsl и xml. При этом при вызове xsltApplyStylesheetUser их нужно передать снова. При этом если в одном из этих вызовов передать пустые документы, то трансформация отработает не правильно. Как это все понимать? 3. Получается что xsltTransformContext - одноразовый (раз уж он сразу в "конструкторе" хочет получить xsl и xml). Мне же надо нарегать в контексте кучу функций. Я не хочу это делать каждый раз при каждной новой трансформации. Я хочу зарегать все один раз, и потом юзать полученный контекст на разных xsl/xml. Это возможно? Должно быть какое-то решение. Ведь в PHP используется libxslt, а там интерфейс делает именно то, что мне нужно: создает пустой контекст, регает функции, и потом юзает один и тот же контекст для разных транформаций: $xsl = DOMDocument::loadXML(...); $xml = DOMDocument::loadXML(...); $proc = new XSLTProcessor; $proc->registerPHPFunctions(...); $proc->importStyleSheet($xsl); $proc->transformToXML($xml); ... $proc->importStyleSheet($xsl); $proc->transformToXML($xml); |