Php ile Xml Okuma Uygulaması
Php

Php ile Xml Okuma Uygulaması

Merhaba arkadaşlar, bu makalemizde bir xml dosyasından verileri php ile çekip ekrana yazdıracağız. Kodlara geçmeden önce ne işe yarayabileceğini kısaca anlatayım. Örneğin e-ticaret siteleri tedarikçi firmalardan ürünleri xml ile çekmektedir. Tedarikçi firma ürünlerin adını, fiyatını, stoğunu ve benzeri özellikleri veritabanından çekip xml'e dökerek ürün sağladığı firmaların bu bilgilere erişmesini sağlar. Bu şekilde başka bir sitede satılan ürünleri kendi sitelerine veritabanına kayıt etme zahmetine girmeden(istenilirse veri çekilip veritabanına kaydedilebilir) xml ile çekip satış sağlanabilir. Bugün bunun çok çok basit bir örneğini yapacağız. İlk olarak xml dosyamızı oluşturalım.
urunler.xml

<?xml version="1.0" encoding="utf-8"?>
<urunler>
<item>
<urunadi>Apple iPhone 5 16 GB</urunadi>
<fiyat>1899 TL</fiyat>
<kategori>Telefon</kategori>
</item>
<item>
<urunadi>Canon EOS 600D 18 MP</urunadi>
<fiyat>1399 TL</fiyat>
<kategori>Foto - Kamera</kategori>
</item>
<item>
<urunadi>Dunlop CF 8000 Koşu Bandı</urunadi>
<fiyat>1999 TL</fiyat>
<kategori>Spor - Outdoor</kategori>
</item>
</urunler>
Böylelikle xml dosyamızı oluşturduk. Urunler, fiyat, kategori diğer tüm isimleri kendi istediğimiz gibi değiştirebiliriz. Tabiki php dosyamızda da değiştirmemiz gerekmekte. Şimdi xmlcek.php sayfamıza geçelim.
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
Deneme Xml Çekimi
</title>
</head>
<body>
<table border="0" cellspacing="0" cellpadding="10" style="font-family:Tahoma; font-size:13px; border:solid; border-width:1px; border-color:#666666; color:#000000;"><tr style="background-color:#666666; color:#ffffff; font-weight:bold;">
<td>Ürün Adı</td>
<td>Ürün Fiyatı</td>
<td>Kategori</td>
</tr>
$xml_adresi = "http://www.aerdogan.com/isim.xml"; // xml'imizin bulunduğu yer
$bilgi = simplexml_load_file($xml_adresi); //Fonksiyon ile xml'i çekip bilgi değişkenimize aktardık
foreach($bilgi->item as $urun) //foreach döngüsü ile her bir satır veriyi çekiyoruz
{
echo '<tr>
<td style="border-bottom:solid; border-width:1px; border-color:#666666;">'.$urun->urunadi.'</td>
<td style="border-bottom:solid; border-width:1px; border-color:#666666;">'.$urun->fiyat.'</td>
<td style="border-bottom:solid; border-width:1px; border-color:#666666;">'.$urun->kategori.'</td>
</tr> '; //Döngünün her dönmesiyle üstteki kısım ekrana bir satır olarak basılacaktır.
}
</table>
</body>
</html>
Böylelikle makalemizin sonuna gelmiş bulunmaktayız. Anlaşılmayan bir yer varsa yorum yoluyla sorabilirsiniz. Sonraki makalelerde görüşmek üzere...


author

Aykut Erdoğan

simplexml, xml, foreach

  • Bu Yazılara da Gözat:

    0 Yorum

    Cevapla