PHP İle XML Okuma 14

PHP ile XML dosyalarını okumak için birden fazla yöntem bulunmaktadır. Ben sizlere bu işi simplexml_load_file fonksiyonu ile nasıl yapılacağını göstereceğim. İlk olarak bir XML dosyasını aşağıdaki gibi oluşturalım ve icerik.xml olarak kaydedelim.

[ad#orta]

<?xml version="1.0" encoding="utf-8"?>
<hasan>
    <konu sira="1">
        <baslik>PhpSorunu.com Tüm Hızıyla Bloglamaya Devam Ediyor...</baslik>
        <link>http://www.phpsorunu.com</link>
        <icerik>1 yılı aşkın süredir yayın hayatına devam eden blog, webmasterların büyük şekilde dikkatini çekiyor. Özellikle güncel ve özgün içerikler vazgeçilmezleri arasında. Katkısı da wordpress</icerik>
        <etiket>phpsorunu,php,css,jquery,html,wordpress</etiket>
    </konu>
 
    <konu sira="2">
        <baslik>Wordpress</baslik>
        <link>http://www.phpsorunu.com/category/wordpress</link>
        <icerik>Blogda wordpress ile ilgili bir çok yazıya da yer veriliyor.</icerik>
        <etiket>wordpress</etiket>
    </konu>
</hasan>

Xml dosyamızı birazcık açıklamak gerekirse:
Örnek olması açısından bir blog sitesi tarzında oluşturdum. Konu içerisindeki yazıların başlığı, linki, içeriği ve etiketler listelenmektedir.
Şimdi okuma işlemini yapan kodlarımızı yazalım ve nasıl çalıştığını inceleyelim.

<?php
header("Content-Type: text/html; charset=utf8");
$dosya=simplexml_load_file("icerik.xml");
foreach ($dosya->konu as $konu) 
{
   echo $baslik=$konu->baslik.'<br>';
   echo $link=$konu->link.'<br>';
   echo $icerik=$konu->icerik.'<br>';
   echo $etiket=$konu->etiket.'<br>';
   echo "<hr>";
}
?>

simplexml_load_file fonksiyonu ile icerik.xml dosyamızı okuduk ve $dosya adlı değişkene aktardık.
Bir foreach döngüsü sayesinde değişken içerisindekileri aldık ve echo komutu ile ekrana yazdırdık.
Görmüş olduğunuz gibi işlemimiz bu kadar basittir. Herkese başarılar, umarım faydalı bir yazı olmuştur.

14 thoughts on “PHP İle XML Okuma

  1. Reply Mert Eki 3,2011 21:28

    Güzel bir anlatım olmuş teşekkürler Hasan hocam.

  2. Reply Davut KARA Eki 29,2011 23:47

    Hocam feed rss onlarıda bu şekilde okuyabilirz öyle değilmi?

  3. Reply Erdem Kas 10,2011 14:27

    Merhaba peki aşağıdaki gibi bir xml i nasıl okuruz
    <audit>
    <record ad="erdem" soyad="keskin" no="5">
    <subject il="Kocaeli" İlce="Gebze" mahalle="gaziler"/>
    <return araba="evet" deneme="no15"/>
    </record>
    <record ad="ali" soyad="uznun" no="5">
    <subject il="Kocaeli" İlce="Golcuk" mahalle="gaziler"/>
    <return araba="hayır" deneme="no15"/>
    </record>
    </audit>

    • Reply hsnhsynisler Kas 10,2011 18:13

      Hocam aynı mantık ile yapacaksınız işte. Örneği biraz inceleyin.

    • Reply Tarık Demirci Eki 6,2012 15:29

      ..//
      echo $ad=$konu->record["ad"].'';
      echo $soyad=$konu->record["soyad"].'';
      //..

      • Reply hsnhsynisler Eki 9,2012 12:15

        Yukarıdaki şekilde yazım doğru değildir. Lütfen kodlara bakarak tekrardan kodunuzu gözden geçiriniz.

  4. Reply Batuhan Küçükali Nis 2,2012 11:43

    Teşekkürler güzel bir anlatım olmuş

  5. Reply Bilişim Haz 10,2012 14:23

    adminim gerçekten bu benm işime çok yaradı teşekkürler phpsorunu adminleriii inanılmaz tecrübeli bir kadronuz var.

  6. Reply can erturk Ağu 14,2012 18:59

    Size farklı bir sorum olacak, Wordpres de özel alana XML de veri nasıl çekebiliriz?

  7. Reply Yasin Ağu 27,2012 20:17

    Peki bunu günlere göre, tarih olsa ve her güne göre bir içerik göstermesi nasıl olu acaba??

  8. Reply Duygu Eyl 12,2012 10:23

    Merhaba ben yapamadım http://www.netoyun.org adlı sitemde ?Yada ben beceriksizim?

  9. Reply hasan Ara 4,2012 15:48

    sağol kardeş

  10. Reply aslıhan May 15,2015 21:57

    teşekkürler

Leave a Reply