romegames 1
romegames
noisiv 1
noisiv
Manwe Work 1
Manwe Work
kaptanmikro1 1
kaptanmikro1
lHezarfeNl 1
lHezarfeNl
Bodyguardd 1
Bodyguardd
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
BeviS 1
BeviS
Reklam vermek için turkmmo@gmail.com

Altın Konu PHP SimpleXML Ayrıştırıcı

  • Konuyu başlatan Konuyu başlatan ByESiNTi
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 17
  • Görüntüleme Görüntüleme 747
5.00 yıldız(lar) 1 Değerlendirme Değerlendirenler
SimpleXML, XML verilerini kolayca işlememize ve almamıza izin veren bir PHP uzantısıdır.


SimpleXML Ayrıştırıcı​

SimpleXML, ağaç tabanlı bir ayrıştırıcıdır.

SimpleXML, XML belgesinin yapısını veya düzenini biliyorsanız, bir öğenin adını, niteliklerini ve metin içeriğini almanın kolay bir yolunu sağlar.

SimpleXML, bir XML belgesini, diziler ve nesneler topluluğu gibi yineleyebileceğiniz bir veri yapısına dönüştürür.

DOM veya Expat ayrıştırıcısıyla karşılaştırıldığında SimpleXML, bir öğeden metin verilerini okumak için daha az kod satırı alır.



Kurulum​

PHP 5'ten itibaren SimpleXML işlevleri PHP çekirdeğinin bir parçasıdır. Bu işlevleri kullanmak için kurulum gerekmez.


PHP SimpleXML - Dizeden Okumak..​

PHP simplexml_load_string()işlevi, bir dizeden XML verilerini okumak için kullanılır.

Bunun gibi XML verilerini içeren bir değişkenimiz olduğunu varsayalım:

Örnek:
Kod:
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>";

Aşağıdaki örnek simplexml_load_string(), bir dizeden XML verilerini okumak için işlevin nasıl kullanılacağını gösterir :

Örnek:​

Kod:
<?php
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>";

$xml=simplexml_load_string($myXMLData) or die("Error: Cannot create object");
print_r($xml);
?>

Yukarıdaki kodun çıktısı şöyle olacaktır:

Kod:
SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don't forget me this weekend! )

Hata İşleme İpucu: Belgeyi yüklerken tüm XML hatalarını almak ve ardından hataları yinelemek için libxml işlevini kullanın. Aşağıdaki örnek, bozuk bir XML dizesini yüklemeye çalışır:

Örnek:
Kod:
<?php
libxml_use_internal_errors(true);
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<document>
<user>John Doe</wronguser>
<email>john@example.com</wrongemail>
</document>";

$xml = simplexml_load_string($myXMLData);
if ($xml === false) {
  echo "Failed loading XML: ";
  foreach(libxml_get_errors() as $error) {
    echo "<br>", $error->message;
  }
} else {
  print_r($xml);
}
?>

Yukarıdaki kodun çıktısı şöyle olacaktır:

Kod:
Failed loading XML:
Opening and ending tag mismatch: user line 3 and wronguser
Opening and ending tag mismatch: email line 4 and wrongemail

PHP SimpleXML - Dosyadan Okumak​

PHP simplexml_load_file()işlevi, bir dosyadan XML verilerini okumak için kullanılır.

Şuna benzeyen " note.xml " adında bir XML dosyamız olduğunu varsayalım :

Kod:
<?xml version="1.0" encoding="UTF-8"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>


Aşağıdaki örnek simplexml_load_file(), bir dosyadan XML verilerini okumak için işlevin nasıl kullanılacağını gösterir :
Örnek:
Kod:
<?php
$xml=simplexml_load_file("note.xml") or die("Error: Cannot create object");
print_r($xml);
?>

Yukarıdaki kodun çıktısı şöyle olacaktır:

Kod:
SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don't forget me this weekend! )

İpucu: Sonraki bölüm, SimpleXML ile bir XML dosyasından düğüm değerlerinin nasıl alınacağını/alınacağını gösterir!
 
Son düzenleme:

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst