PHP SimpleXML

SimpleXML en yaygın XML görevlerini işler, diğer görevlerse diğer genişletmeler tarafından ele alınır.

SimpleXML nedir?

SimpleXML PHP 5'teki yeni bir özelliktir. XML belgesi layout'ını biliyorsanız, element özellikleri ve metinlerini elde etmek için kolay bir yol sunar.

DOM veya Expat解析çisi ile karşılaştırıldığında, SimpleXML sadece birkaç satır kodla elementlerden metin verilerini okuyabilir.

SimpleXML XML belgelerini nesnelere dönüştürebilir, örneğin:

  • Element - SimpleXMLElement nesnesine dönüştürülen tek özellik. Aynı seviyede birden fazla element varsa, onlar dizide yer alır.
  • Özellikler - Bağlı dizi kullanılarak erişilir, alt indeksler özellik adları ile eşleşir.
  • Element verileri - Elementin metin verileri dizgeye dönüştürülür. Bir elementin birden fazla metin düğümü varsa, bulundukları sırayla sıralanır.

Aşağıdaki gibi temel görevleri yerine getirdiğinizde, SimpleXML hızlı bir şekilde kullanılır:

  • XML dosyasını okuma
  • XML dizgisinden veri çıkarma
  • Metin düğümü veya özellikleri düzenleme

Ancak, örneğin ad alanları gibi ileri düzey XML işlemleriyle çalışırken, Expat解析çisi veya XML DOM kullanmak daha iyidir.

Kurulum

PHP 5.0'dan itibaren SimpleXML fonksiyonu PHP'nin temel bileşenlerinden biridir. Bu fonksiyonları kullanmak için kurulum yapmanız gerekmez.

SimpleXML kullanarak

Aşağıda XML dosyası bulunmaktadır:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>George</to>
<from>John</from>
<heading>Hatırlatma</heading>
<body>Toplantıyı unutmayın!</body>
</note>

Üstteki XML dosyasından eleman adı ve verisini çıktı almayı planlıyoruz.

Yapılması gerekenler:

  1. XML dosyasını yüklemek
  2. İlk elemanın adını almak
  3. children() fonksiyonu ile her alt节点的 üzerinde tetiklenen döngü oluşturma
  4. Her alt节点的要素名称和数据输出

Örnek

<?php
$xml = simplexml_load_file("test.xml");
echo $xml->getName() . "<br />";
foreach($xml->children() as $child)
  {
  echo $child->getName() . ": " . $child . "<br />";
  }
?>

Yukarıdaki kodun çıktısı:

not
to: George
from: John
heading: Hatırlatma
body: Toplantıyı unutmayın!

PHP SimpleXML hakkında daha fazla bilgi

PHP SimpleXML hakkında daha fazla bilgi almak için sitemizi ziyaret edin PHP SimpleXML Referans Kılavuzu.