Önceki yazılarda oluşturduğumuz XML üzeriden bu yazıda oluşturulan elemanı içeriğini nasıl değiştiririz ve nasıl sileceğiz?

Hızlı başlarsak öncelikle getElementByTagName eleman etiketini belirtikten sonra item ile kaçıncı sırada olduğunu yazıyoruz ( 0’dan başlar ) sonrada 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ı değerini "Deneme" olarak değiştiriyoruz.
$xml->save('./kutuphane.xml'); // kayıt ediyoruz
?>

Yukarıda basit olarak istenilen eleman güncellemeyi görüyoruz bunu nerde 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;
}
?>

Birde getElementByTagName yerine getElementById ile <eleman id=“123”></eleman> kullanarakta değerini güncelleyebilirsiniz.

Elemanımızı silmek istersek için;

<?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');
?>