首頁 > 後端開發 > php教程 > php&java(三)

php&java(三)

黄舟
發布: 2023-03-03 15:04:01
原創
919 人瀏覽過

例子二:透過Xalan 1.2,使用XSLT轉換xml 

做為第二個例子,我們使用了Xalan-java的XSLT引擎,這個引擎來自於APACHE的XML項目,使用這個程序,我們能夠使用XSL轉換XML來源文件。這將極大的方便我們處理文件和進行內容管理。 

開始之前,我們需要將xerces.jar 和 xalan.jar檔案放入java.class.path目錄下(這兩個檔案包含在Xalan-Java 1.2 中,可以從xml.apache.org處下載)。 
php程式如下: 
函數xslt_transform()以XML和XSL檔案為參數,形式可為檔案名稱(如:foo.xml)或URL(如:http://localhost/foo.xml)。


function xslt_transform($xml,$xsl) { 

  // Create a XSLTPRocessorFactory object. XSLTProcessorfactory is a Javaate a XSLTPRocessorFactory object。
  $XSLTProcessorFactory = new java(" org.apache.xalan.xslt.XSLTProcessorFactory"); 

  // Use the XSLTProcessorFactory method getProcessor() to create a 
  // new XSLTProcessor objFactorect.SLcom

  // Use XSLTInputSource objects to provide input to the XSLTProcessor 
  // process() method for transformation. Create objects for both the 
  // xml source as well as the XSL input
  // xml source as well as the XSL in source. ' system identifier' (URI) which 
  // can be an URL or filename. If the system identifier is an URL, it 
  // must be fully resolved. ache
  // XSLTInputSource", $xml); 
  $stylesheetID = new java("org.apache.xalan.xslt.XSLTInputSource", $xsl); 

  // Create a stringWriter; java.io.StringWriter"); 

  // Create a ResultTarget object for the output with the XSLTResultTarget 
  // class. Parameter of XSLTResultTarget is (in this case) a 'acter .  
  $resultTarget = new java("org.apache.xalan.xslt.XSLTResultTarget", $stringWriter); 

  // Process in可以the XML input, placing 
  // the result in the result target. 
  $XSLTProcessor->process($xmlID,$stylesheetID,$resultTarget); Ŏ buffer's current value as a string to get the 
  // transformed result. 
  $result = $stringWriter->toString(); 
 
?> 

函數定義好後,我們就可以呼叫它了,在下面的例程中,變數$xml指向一個URL字串,$xsl也是如此。這個範例將顯示5個最新的phpbuilder.com文章標題。


$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(三)的內容,更多相關文章請關注PHP中文網(www.php.cn)!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板