@RA

Тег xslt в блоге RA

RA

Зарелизился 1.0.0 Saxon/C http://www.saxonica.com/saxon-c/index.xml

Поставил его. Поставил php-extension. А он сегфолтится как сучка. Просто версию спрашиваю, а он сегфолтится.
Тогда поставил 0.3.1 beta. Вот этот работает. Не поддерживет XSLT extension functions. И ещё пара багов. Но работает. Сегфолтится гораздо реже.

Да и как им не сегфотиться, если писаны они тулзой автоматической трансляции java в C?

Сравнил скорость трансформации saxon и стандартного XSLTProcessor, который на libxsl. Saxon медленнее в 6 раз. Единственные плюс saxon это поддержка xslt2.

Есть ещё проект xslt-трансформации прямо на php https://github.com/genkgo/xsl С поддержкой xslt2 но зачаточном состоянии.
Не пробовал, но чуйка подсказывает, что тормозить должно похлеще саксона.

RA

Интерсеные решения для xslt
1. Группировка
http://snippy.ru/snippet/1836-Gruppirovka/

  1. Объединение, Пересечение, Разность множеств
    http://snippy.ru/snippet/18...abota_s_mnogestvami/
    Принадлежность узла множеству
    http://snippy.ru/snippet/17...ost-uzla-mnozhestvu/

  2. Является ли элемент первым в множестве
    http://snippy.ru/snippet/18..._pervym_v_mnogestve/
    Чаще всего конечно лучше использовать position(), но для случая foreach с указанной сортировкой sort, position() будет возвращать не то

  3. Является ли переменная числом
    http://snippy.ru/snippet/17...peremennaja-chislom/
    Думаю, что проверка $x != $x, она и в js сработает аналогично.

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.