PHPを使用したXSLをHTML出力に処理しています。ここまでは順調ですね。ここに私のコードです。XSLTプロセッサで処理する前にXMLのサブツリーを抽出する必要があります
<?php
$xslDoc = new DOMDocument();
$xslDoc->load("content.xsl");
$xmlDoc = new DOMDocument();
$xmlDoc->load("content.xml");
// some xpath/dom-query filtering to get
// subtree of loaded xml-file
$proc = new XSLTProcessor();
$proc->importStylesheet($xslDoc);
echo $proc->transformToXML($xmlDoc);
?>
ご覧のとおり、これは単純なXSLTプロセッサです。出力はうまくいく。たとえば、私は与えられたXML内に3つの兄弟ノード「ノード」を持っています:
<root>
<node>
<subnode>..</subnode>
</node>
<node>
<subnode>..</subnode>
</node>
<node>
<subnode>..</subnode>
</node>
</root>
これで、2番目のノードをXMLプロセッサに渡したいだけです。
どうすればいいですか?あなたが$xmlDoc->getElementsByTagName('node')->item(1)
にアクセスし、transformToDoc
にそれを渡した後、saveXML
を使用するか、saveHTML
できるようhttp://www.php.net/manual/en/xsltprocessor.transformtodoc.phpによると
クリス
は私が求めることができますか? –
両方のアプローチがどのように機能するか知りたい。私はすでにXSLTの方法を知っていて、そこから抽出します。 – ChrisBenyamin