Wyświetlanie zapytania i odpowiedzi w xml z SoapClienta

$C = new SoapClient(‚webservice.wsdl’, array( ‚trace’ => 1 ) );

print „REQUEST:\n”.$C->__getLastRequest().”\n”;
print „RESPONSE:\n” .$C->__getLastResponse().”\n”;

lub
print „REQUEST:\n”.htmlspecialchars($C->__getLastRequest()).”\n”;
print „RESPONSE:\n” .htmlspecialchars($C->__getLastResponse()).”\n”;

Utworzenie najprostszego dokumentu XML

$docs = new DOMDocument('1.0', 'UTF-8');
$doc->formatOutput = true;
$pages = $docs->appendChild(new DOMElement('pages'));
$element_page = $pages->appendChild(new DOMElement('page'));
$element_page->setAttribute("id", "123456");
$element_name = $docs->createElement('link', 'link numer 123456');
$element_page->appendChild($element_name);
$element_CDATA = $docs->createCDATASection('http://kody.wig.pl/');
$element_url = $element_page->appendChild(new DOMElement('url'));
$element_url->appendChild($element_CDATA);
$xmldata = $docs->saveXML();
echo $xmldata;

Odczyt danych z XML

$url = ‚data.txt’;

$xml = @file_get_contents($url);
$xml_obj = simplexml_load_string($xml);     

foreach($xml_obj->page as $page) {
    echo $page->title.’: ‚;
    echo $page->url.'<br>’;

}

Pprzykłądowy XML:
<?xml version=”1.0″ encoding=”UTF-8″?>
<pages>
    <page>
    <id>1</id>
    <title><![CDATA[miejsce mapa Sopot]]></title>
    <url><![CDATA[ http://mapy.emiejsca.pl/sopot_sopot_sopot_pomorskie,mapa.html ]]></url>
    <thumb><![CDATA[ http://mapy.emiejsca.pl/sopot_sopot_sopot_pomorskie,miejsca.html ]]></thumb>
    </page>
    <page>
    <id>2</id>
    <title><![CDATA[miejsce mapa Gdynia]]></title>
    <url><![CDATA[ http://mapy.emiejsca.pl/gdynia_gdynia_gdynia_pomorskie,mapa.html]]></url>
    <thumb><![CDATA[ http://mapy.emiejsca.pl/gdansk_gdansk_gdansk_pomorskie,miejsca.html]]></thumb>
    </page>
</pages>

Odczyt pogody z xml

<?xml version=”1.0″ encoding=”UTF-8″?>
<root>
        <prognoza>
                <id>Egipt</id>
    <temp>
      <w>  7.0</w>
      <w>  8.0</w>
      <w>  9.0</w>
    </temp>
        </prognoza>
</root>

<?
$root = simplexml_load_file(‚test.xml’);
$wt = $root->prognoza->temp->w;

print_r($wt); echo ‚<br>’;

foreach($wt as $w){
    echo ‚temp:’ .$w. ‚<br/>’;
}
?>

Wynik:
SimpleXMLElement Object ( [0] => 7.0 )
temp: 7.0
temp: 8.0
temp: 9.0

Przykład definicji dokumentu XML

&lt;?xml version="1.0" encoding="iso-8859-2" standalone="no"?&gt;
&lt;!DOCTYPE zwierzeta_swiata [
&lt;!ELEMENT zwierzeta_swiata (zwierze*)&gt;
&lt;!ELEMENT zwierze (nazwa+)&gt;
&lt;!ELEMENT nazwa (#PCDATA)&gt; ]&gt;
&lt;zwierzeta_swiata&gt;
&lt;zwierze&gt;
&lt;nazwa&gt;Lew&lt;/nazwa&gt;
&lt;kontynent&gt;Afryka&lt;/kontynent&gt;
&lt;/zwierze&gt;
&lt;zwierze&gt;
&lt;nazwa&gt;Żyrafa&lt;/nazwa&gt;
&lt;kontynent&gt;Afryka&lt;/kontynent&gt;
&lt;/zwierze&gt;
&lt;/zwierzeta_swiata&gt;