Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  XML
Letztes Update: 16.08.2005 17:53:45


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite PHP-Skripte
Seite PHP Befehlsreferenz
Seite PHP5 Praxisbuch
Seite Gratis-Videolektionen*
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

Seite Anbieterverzeichnis

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  

 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 79.000 Beiträgen finden Sie sicher die passende Antwort!*  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!*

Vorname: 
Name:
E-Mail:
 



 

Manuelle Erzeugung von XML-Dokumenten




Sie haben nun bereits erfahren, wie Sie XML-Dokumente verarbeiten können, sprich parsen. Was nun noch fehlt ist die Erzeugung von XML-Dokumenten. Man unterscheidet hierbei die manuelle und dynamische Erzeugung. Als erste werden wir Ihnen die manuelle Methode vorstellen.

Die manuelle Ausgabe von XML-Daten erfordert meist den Einsatz von mehreren foreach-Schleifen zum Arbeiten der Arrays. Es gilt hierbei einige wichtige Details zu beachten. Als Erstes müssen Sie header() aufrufen, um den korrekten Conten-Type-Header für Ihr Dokument zu setzen. Da Sie XML senden und nicht HTML, sollte dies text/xml sein.

Abhängig von der Einstellung der Konfigurationsoption short_open_tag, kann ausserdem der Versuch, die XML-Deklaration auszugeben, unbeabsichtitgt die PHP-Verarbeitung auslösen. Da das mit dem kurzen öffnenden PHP-Tag übereinstimmt, müssen Sie, um die Deklaration an den Browser ausgeben zu können, entweder die Option deaktivieren oder die Zeile mit einer PHP-Anweisung ausgeben. In der Lösung wenden wir den zweiten Weg an.

Anschliessend müssen möglicherweise vorkommende Entities in Escape-Sequenzen umgewandelt werden. Beispielsweise muss das & in dem Roman "Du & Ich" durch & ersetzt werden. Um Ihre Daten entsprechend zu konvertieren, verwenden Sie hierfür die htmlspecialchars()-Funktion.


Beispiel



<?php
header
('Content-Type: text/xml');

$autoren = array(
array(
'name'     => 'Matthias Kannengiesser',
     
'titel'  => 'MySQL 4',
     
'thema'    => 'Datenbanken',
     
'preis' => '39.95'),

array(
'name'     => 'Caroline Kannengiesser',
     
'titel'  => 'Flash & ActionScript',
     
'thema'    => 'Programmierung',
     
'preis' => '49.95')
);

print 
'<?xml version="1.0"?>' "\n";
print 
"<autoren>\n";

foreach (
$autoren as $autor) {
    print 
"    <autor>\n";
    foreach(
$autor as $tag => $data) {
        print 
"        <$tag>" htmlspecialchars($data) . "</$tag>\n";
    }
    print 
"    </autor>\n";
}

print 
"</autoren>\n";
?>




Ausgabe



<?xml version="1.0"?>
<autoren>
    <autor>
        <name>Matthias Kannengiesser</name>
        <titel>MySQL 4</titel>
        <thema>Datenbanken</thema>
        <preis>39.95</preis>
    </autor>
    <autor>
        <name>Caroline Kannengiesser</name>
        <titel>Flash &amp; ActionScript</titel>
        <thema>Programmierung</thema>
        <preis>49.95</preis>
    </autor>
</autoren>




 


Verwendung von XSLT mit PHP
 




 sponsored by

Host Europe


HighText iBusiness


Host Europe




© 2001-2006 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005-2006 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de