XML irdelerken az çok bunu şurada şöyle kullanırım demişsinizdir. Yavaştan nerelerde, nasıl kullanırız sorusunu cevaplamaya çalışacağım.

Yine örneklere başladığımız gibi kütüphane üzerine gidelim.

Şimdi örnek XML olarak aşağıdaki yapıyı kullanacağız.

<?xml version="1.0" encoding="UTF-8"?>
<kitaplar>
	<kitap isbn="9759954949">
		<adi>Yunus Emre Divanı</adi>
		<yazar gorev="Derleyici">Selim Yağmur</yazar>
		<dil>Türkçe</dil>
		<baski>8</baski>
		<tarih>
			<yil>2014</yil>
			<ay>04</ay>
			<gun>01</gun>
		</tarih>
	</kitap>
	<kitap isbn="9753386203">
		<adi>Risaletü'n-Nushiyye Yunus Emre</adi>
		<yazar gorev="Çevirmen">Prof. Dr. Umay Türkeş Günay</yazar>
		<dil>Türkçe</dil>
		<baski>3</baski>
		<tarih>
			<yil>2009</yil>
			<ay>01</ay>
			<gun>01</gun>
		</tarih>
	</kitap>
</kitaplar>

DOMDocument Class ile XML Ağaç yapısını oluşturalım. Kod üzerine satır satır değinelim.

<?php
$xml = new DOMDocument(); // Nesne oluşturuyoruz
$xml->encoding = 'UTF-8'; // Nesnenin encoding UTF-8 yapıyoruz

$kitaplar = $xml->createElement('kitaplar'); // Kitaplar diye root eleman oluşturuyoruz

$kitap = $xml->createElement('kitap'); // Kitap elemanını oluşturuyoruz
$kitap_isbn = $xml->createAttribute('isbn'); // Kitap elemanın isn etiket(nitelik, özellik) oluşturuyoruz
$kitap_adi = $xml->createElement('adi'); // adi elemanını oluşturuyoruz
$kitap_yazar = $xml->createElement('yazar'); // ***
$kitap_gorev = $xml->createAttribute('gorev');
$kitap_dil = $xml->createElement('dil');
$kitap_baski = $xml->createElement('baski');
$kitap_tarih = $xml->createElement('tarih');

$kitap_tarih_yil = $xml->createElement('yil'); // ***
$kitap_tarih_ay = $xml->createElement('ay');
$kitap_tarih_gun = $xml->createElement('gun');

$kitap_tarih->appendChild($kitap_tarih_yil); // Tarih elemanın altına yıl, ay, gun elemanları ekliyoruz.
$kitap_tarih->appendChild($kitap_tarih_ay);
$kitap_tarih->appendChild($kitap_tarih_gun);

$kitap_yazar->appendChild($kitap_gorev); // yazar elemanın gorev etiket(nitelik, özellik) ekliyoruz
$kitap->appendChild($kitap_adi); // kitap elemanın altına adi, yazar, dil vs. ekliyoruz.
$kitap->appendChild($kitap_yazar); // ***
$kitap->appendChild($kitap_dil);
$kitap->appendChild($kitap_baski);
$kitap->appendChild($kitap_tarih);
$kitap->appendChild($kitap_isbn);

$kitaplar->appendChild($kitap); // Kitaplar elemanın altına kitap elemanını ekliyoruz
$xml->appendChild($kitaplar); // XML altına Kitaplar elemanını ekliyoruz

$xml->save('./kutuphane.xml'); // Oluşturulan XML nesnesini kaydediyoruz
?>

Yukarıda oluşturduğum kutuphane.xml dosyasına bakacak olursak;

<?xml version="1.0" encoding="UTF-8"?>
<kitaplar>
  <kitap isbn="">
	<adi/>
	<yazar gorev="">
		<dil/>
		<baski/>
		<tarih>
		  <yil/>
		  <ay/>
		  <gun/>
	  </tarih>
  </yazar></kitap>
</kitaplar>

Kütüphane XML Ağaç yapısını oluşturduk.

Sonraki yazımda oluşturulan XML içerik ekleme, okuma, düzenleme, silme, güncelleme işlemlerine değinmeye çalışacağım.