ตัวฟังชั่นนี้จะทำการโหลดข้อมูลXMLมาเป็น object ให้เราใช้งาน
รูปแบบก็จะประมาณนี้
ใช้ XML นี้ประกอบนะคะ$xml = simplexml_load_file('ชื่อไฟล์XML');
โค้ด: เลือกทั้งหมด
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="WEB">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
โค้ด: เลือกทั้งหมด
<?php
$xml = simplexml_load_file('books.xml'); //โหลด xml มาเป็น object
//ใช้ xpath ชี้ตำแหน่งข้อมูลที่เราต้องการ ในตัวอย่างนี้จะเลือก book ที่มี category=WEB มาแสดงค่ะ
$title = $xml->xpath("/bookstore/book[@category='WEB']/title");
$author=$xml->xpath("/bookstore/book[@category='WEB']/author");
$year = $xml->xpath("/bookstore/book[@category='WEB']/year");
$price = $xml->xpath("/bookstore/book[@category='WEB']/price");
$count = count($title); //นับจำนวนหนังสือ(สำหรับจัดรูปแบบเพื่อความสวยงามค่ะไม่มีอะไรมาก)
$i=0;
foreach($title as $titles) // ใช้ foreach โหลดข้อมูลออก
{
$tt[$i] = $titles;
$i++;
}
$i=0;
foreach($author as $authors)
{
$au[$i] = $authors;
$i++;
}
$i=0;
foreach($year as $years)
{
$y[$i] = $years;
$i++;
}
$i=0;
foreach($price as $prices)
{
$p[$i] = $prices;
$i++;
}
//ส่วนนี้ เพื่อความสวยงามอย่างเดียวค่ะ อิอิ ^^
for($i=0;$i<$count;$i++)
{
echo "TITLE : "."$tt[$i]"."<BR>";
echo "AUTHOR : "."$au[$i]"."<BR>";
echo "YEARS : "."$y[$i]"."<BR>";
echo "PRICE : "."$p[$i]"."<BR>";
echo "###############################"."<BR>";
}