PHP mevcut xml dosyası için düğüm eklemek ve kaydetmek

3 Cevap php

Öyle mi mümkün varolan bir xml dosyasına yeni bir düğüm eklemek, ve sonra dosyayı kaydetmek için php yazar XMLWriter kullanarak. Bu aslında bir ENW dosyasını i bir xml dosyasını güncelleştirmek istediğiniz her zaman yaratmak olduğunu bana benficial çok daha fazla olacaktır.

3 Cevap

Sen PHP'nin Simple XML kullanabilirsiniz. Sen, dosya içeriğini okumak Basit XML ile düğüm eklemek ve arka içerik yazmak zorunda.

Burada genel problem, bir iyi biçimli XML belge tek bir kök öğe sahip olmasıdır. Yani içinde yeni bir öğe eklemek için güçlü olmak için tam belge ağacındaki / ayrıştırma okumak zorunda kalıyoruz. Bu nedenle tüm SimpleXML önerileri burada.

XMLWriter çok verimli bir veri XML akışı yazma içindir, ama (ilk onları okumadan), varolan dosyaları değiştiremez.

perlmonks.com burada XML log dosyaları tartışılır bu konu bakın. Özellikle ilginç iyi biçimlendirilmiş bir XML dosyası var ve hala bir belgeye düğümler eklemek edebilmek için nasıl gösterir "Kötü İyi mirod" ile yorumdur. Çözelti ayrı bir dosyada keyfi düğümleri yerleştirmektir (çünkü karıştırmasını kök elemanın kendi iyi-oluşmuş değil) ve bir dış varlık olarak dosya başvurusu için. Sizin durumda, ekleme için dosyayı açarken standart PHP fopen, fwrite fclose fonksiyonu ile bir varlık olarak dahil edilecektir dosyası yazmak istiyorum.