XSLT - Di Server
Untuk membuat data XML tersedia untuk semua jenis browser, kita dapat mengubah dokumen XML di SERVER dan mengirimkannya kembali ke browser sebagai XHTML.
Solusi Lintas Browser
Pada bab sebelumnya kami menjelaskan bagaimana XSLT dapat digunakan untuk mengubah dokumen dari XML ke XHTML di browser. Kami menggunakan JavaScript dan parser XML untuk transformasi. Namun, ini tidak akan berfungsi di browser yang tidak memiliki pengurai XML.Untuk membuat data XML tersedia untuk semua jenis browser, kita dapat mengubah dokumen XML di server dan mengirim kembali ke browser sebagai XHTML.
Itu keindahan lain dari XSLT. Salah satu tujuan desain untuk XSLT adalah memungkinkan untuk mengubah data dari satu format ke format lain di server, mengembalikan data yang dapat dibaca ke semua jenis browser.
File XML dan File XSLT
Lihatlah dokumen XML yang telah Anda lihat di bab-bab sebelumnya:
<?xml version="1.0" encoding="UTF-8"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
.
.
</catalog>
Dan lembar gaya XSL yang menyertainya:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th style="text-align:left">Title</th>
<th style="text-align:left">Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title" /></td>
<td><xsl:value-of select="artist" /></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
Perhatikan bahwa file XML tidak memiliki referensi ke file XSL.
PENTING: Kalimat di atas menunjukkan bahwa file XML dapat diubah menggunakan banyak lembar gaya XSL yang berbeda.
Kode PHP: Ubah XML ke XHTML di Server
Berikut adalah kode sumber PHP yang diperlukan untuk mengubah file XML menjadi XHTML di server:
<?php
// Load XML file
$xml = new DOMDocument;
$xml->load('cdcatalog.xml');
// Load XSL file
$xsl = new DOMDocument;
$xsl->load('cdcatalog.xsl');
//
Configure the transformer
$proc = new XSLTProcessor;
// Attach the xsl
rules
$proc->importStyleSheet($xsl);
echo $proc->transformToXML($xml);
?>
Tip: Jika Anda tidak tahu cara menulis PHP, silakan pelajari tutorial PHP kami .
Lihat cara kerjanya dengan PHP .
Kode ASP: Ubah XML ke XHTML di Server
Berikut adalah kode sumber ASP yang diperlukan untuk mengubah file XML ke XHTML di server:
<%
'Load XML file
set xml = Server.CreateObject("Microsoft.XMLDOM")
xml.async = false
xml.load(Server.MapPath("cdcatalog.xml"))
'Load XSL file
set xsl = Server.CreateObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load(Server.MapPath("cdcatalog.xsl"))
'Transform file
Response.Write(xml.transformNode(xsl))
%>
Lihat cara kerjanya dengan ASP .