Önceki yazılarda oluşturduğumuz XML üzerinden bu yazıda oluşturulan elemanın içeriğini nasıl değiştireceğimizi ve elemanı nasıl sileceğimizi inceleyeceğiz.

Hızlı başlarsak öncelikle getElementsByTagName ile eleman etiketini belirttikten sonra item ile kaçıncı sırada olduğunu yazıyoruz (0'dan başlar), sonra da nodeValue ile son değerimizi giriyoruz.

<?php
$xml = new DOMDocument();
$xml->load('./kutuphane.xml'); // kütüphaneyi çağırıyoruz
$xml->getElementsByTagName('adi')->item(1)->nodeValue = "Deneme"; // adi etiketine sahip 1. elemanın değerini "Deneme" olarak değiştiriyoruz.
$xml->save('./kutuphane.xml'); // kaydediyoruz
?>

Yukarıda basit olarak istenilen elemanı güncellemeyi görüyoruz. Nerede değişiklik yapıldığını anlamak için:

<?php
$xml = new DOMDocument();
$xml->load('./kutuphane.xml');

echo "Önce";
$kitaplar = $xml->getElementsByTagName('kitap'); // hangi elemana göre listeleyeceksek örnek: adi, yazar, baski...
foreach ($kitaplar as $key => $value) {
    echo "
".$key.". eleman : ".$value->nodeValue;
}
echo "
";

echo "Sonra";
$xml->getElementsByTagName('adi')->item(1)->nodeValue = "Deneme";
$xml->save('./kutuphane.xml');
$kitaplar = $xml->getElementsByTagName('kitap'); // hangi elemana göre listeleyeceksek örnek: adi, yazar, baski...
foreach ($kitaplar as $key => $value) {
    echo "
".$key.". eleman : ".$value->nodeValue;
}
?>

Bir de getElementsByTagName yerine getElementById ile <eleman id="123"></eleman> kullanarak da değerini güncelleyebilirsiniz.

Elemanımızı silmek istersek:

<?php
$xml = new DOMDocument();
$xml->load('./kutuphane.xml'); // kütüphaneyi çağırıyoruz
$kitaplar = $xml->documentElement;
$kitap = $kitaplar->getElementsByTagName('kitap')->item(1); // kitap etiketli 1 elemanı seçip
$kitaplar->removeChild($kitap); // kitap etiketli 1 elemanı siliyoruz.
$xml->save('./kutuphane.xml');
?>