PHP

Php ile XML ve XSL Dosyalarını Birleştirme

Php ile XML ve XSL Dosyalarını Birleştirme

Php ile XML ve XSL Dosyalarını Birleştirme Nasıl ne şekilde yapılır.

Herkese Merhabalar,

Php kodları yardımı ile XML dosyasını nasıl XSL ile biçimlendiririz bugün onu anlatacağım. 

İlk olarak XSL nedir diyecek olursak,

XSL(The Extensible Stylesheet Language Family, Genişletilebilir Biçimlendirme Dili Ailesi), XML dosyalarının içindeki verilere ulaşma, ulaştıklarını başka şekillere dönüştürme ve gösterime hazırlama emirleri içeren kendileri de XML kurallarina uyan diller ailesinin adıdır. 

Şimdi sıradan bir tane XML dosyası oluşturalım

<?xml version="1.0" encoding="UTF-8"?>

<holidayRequest

    <employee>

        <holiday>

            <startDate>2006-07-03</startDate>

            <endDate>2006-07-07</endDate>

        </holiday>

        <number>42</number>

        <firstName>Ali</firstName>

        <lastName>Veli</lastName>      

    </employee>

     

    <employee>

        <holiday>

            <startDate>2009-07-01</startDate>

            <endDate>2009-07-07</endDate>

        </holiday>

        <number>44</number>

        <firstName>Deli</firstName>

        <lastName>Meli</lastName>      

    </employee>

</holidayRequest>

 

Dosyamızı xmlDoc.xml olarak kaydedelim.

Şimdi ise xml dosyamızı biçimlendirecek, xsl dosyamızı oluşturalım.

<?xml version="1.0" encoding="ISO-8859-1"?>

<xsl:stylesheet version="1.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:template match="/">

         <html>

         <body>

           <h3>www.batuhanavlayan.com</h3>

           <table border="1">

             <tr bgcolor="#9acd32">

               <th>Start Date</th>

               <th>End Date</th>

               <th>Number</th>

               <th>First Name</th>

               <th>Last Name</th>

             </tr>

             <xsl:for-each select="holidayRequest/employee">

                <tr>     

                   <td><xsl:value-of select="holiday/startDate"/></td>

                   <td><xsl:value-of select="holiday/endDate"/></td>

                   <td><xsl:value-of select="number"/></td>

                   <td><xsl:value-of select="firstName"/></td>

                   <td><xsl:value-of select="lastName"/></td>

               </tr>

             </xsl:for-each>

           </table>

         </body>

         </html>

    </xsl:template>

</xsl:stylesheet

 

Dosyamızı xslDoc.xsl olarak kaydedelim.

Şimdi ise bu dosyalarımızı php kodları yardımı ile birleştirmeden önce extension=php_xsl.dllkütüphanemizi aktif edelim.

Eğer WampServer kullanıyorsanız “C:wampinapacheApache2.4.4in” klasörüne gidipphp.ini dosyasını açalım ;extension=php_xsl.dll önündeki noktalı virgülü kaldıralım veWampServer yeniden başlatalım.

Şimdi ise php dosyamızı oluşturalım.

<?php

    $xml_file = 'xmlDoc.xml';

    $xsl_file = 'xslDoc.xsl';

  

    $doc = new DOMDocument();

    $xsl = new XSLTProcessor();   

  

    $doc->load($xsl_file);

    $xsl->importStyleSheet($doc);

  

    $doc->load($xml_file);

  

    echo $xsl->transformToXML($doc);

?>

Dosyamızı deneme.php olarak kaydedelim ve tarayıcımızı açalım localhost/deneme.php dosyamızı çalıştıralım.

Xml dosyamızdaki dataları görüntülemek için php kodları yardımı ile xml dosyamızı hazırladığımız xsl ile biçimlendirip, istediğimiz tasarımda görüntüledik.

hoşçakalın :)

HENÜZ YORUM YAPILMAMIŞ

YORUM GÖNDER