例 2: XSLT を使用してソース ファイルを通じて XML を変換します。これにより、文書処理とコンテンツ管理が大幅に容易になります。
始める前に、xerces.jar ファイルと xalan.jar ファイルを java.class.path ディレクトリに置く必要があります (これら 2 つのファイルは Xalan-Java 1.2 に含まれており、xml.apache.org からダウンロードできます)。
php プログラムは次のとおりです:
関数 xslt_transform() はパラメータとして XML および XSL ファイルを受け取り、形式はファイル名 (foo.xml など) または URL (http://localhost など) にすることができます。 /foo.xml)。
function xslt_transform($xml,$xsl) {
// XSLTPRocessorFactory オブジェクトを作成します。 "org.apache.xalan.xslt.XSLTProcessorFactory"); // XSLTProcessorFactory メソッド getProcessor( )
// 新しい XSLTProcessor オブジェクトを作成します。
$XSLTProcessor = $XSLTProcessorFactory->getProcessor(); // XSLTInputSource オブジェクトを使用して XSLTProcessor に入力します
// 両方の変換用のオブジェクトを作成します。
// xml ソースと XSL 入力ソース。
// XSLTInputSource のパラメータは (この場合) 'システム識別子' (URI) です。
// システム識別子の場合は URL またはファイル名になります。 URL、それは
// 完全に解決される必要があります
$xmlID = new java("org.apache.xalan.xslt.XSLTInputSource", $xml);
$ stylesheetID = new java("org.apache.xalan.xslt. ("java.io.StringWriter");
// XSLTResultTarget を使用して出力用の ResultTarget オブジェクトを作成します
// XSLTResultTarget のパラメータは (この場合) '文字
// ストリーム' です。 stringWriter object.
$resultTarget = new java("org.apache.xalan.xslt.XSLTResultTarget", $stringWriter);
// XSLTProcessors のメソッド process() で入力を処理します
// メソッドは XSL スタイルシートを使用します。 XML 入力を変換し、
// 結果を結果ターゲットに配置します。
$XSLTProcessor->process($xmlID,$stylesheetID,$resultTarget); // stringWriters のメソッド toString() を使用して
/ / バッファの現在の値を文字列として返します。
$result = $stringWriter->toString();
return($result);
?>
関数が定義されたら、次のルーチンで、$xsl と同様に、変数 $xml が URL 文字列を指します。この例では、phpbuilder.com の最新の記事タイトル 5 件が表示されます。
$xml = "http://www.phpbuilder.com/rss_feed.php?type=articles&limit=5";
$xsl = "http://www.soeterbroek.com/code/ xml/rss_html.xsl";
$out = xslt_transform($xml,$xsl);
echo $out;
?>
プログラムをローカル マシンで実行している場合は、関数のパラメータが正しいファイル名を指定してください。
$xml = "/web/htdocs/xml_java/rss_feed.xml";
$xsl = "/web/htdocs/xml_java/rss_html.xsl"; $xsl);
echo $out;
?>
この効果は他のメソッドでも実現できますが、おそらくそれらのメソッドの方が優れていますが、この例は PHP による JAVA クラスの呼び出しをより深く理解するのに役立ちます。
上記は php&java (3) の内容です。その他の関連記事については、PHP 中国語 Web サイト (www.php.cn) に注目してください。