บทช่วยสอนPHP

PHP HOME แนะนำ PHP การติดตั้ง PHP PHP ไวยากรณ์ ความคิดเห็น PHP ตัวแปร PHP PHP Echo / พิมพ์ ประเภทข้อมูล PHP PHP Strings หมายเลข PHP PHP คณิตศาสตร์ ค่าคงที่ PHP ตัวดำเนินการ PHP PHP If...Else...Elseif PHP Switch PHP Loops ฟังก์ชัน PHP PHP Arrays PHP Superglobals PHP RegEx

แบบฟอร์มPHP

การจัดการแบบฟอร์ม PHP การตรวจสอบแบบฟอร์ม PHP ต้องใช้แบบฟอร์ม PHP URL แบบฟอร์ม PHP/อีเมล แบบฟอร์ม PHP เสร็จสมบูรณ์

PHPขั้นสูง

วันที่และเวลา PHP รวม PHP การจัดการไฟล์ PHP ไฟล์ PHP เปิด/อ่าน สร้าง/เขียนไฟล์ PHP อัพโหลดไฟล์ PHP คุกกี้ PHP PHP Sessions ตัวกรอง PHP ตัวกรอง PHP ขั้นสูง ฟังก์ชันเรียกกลับของ PHP PHP JSON ข้อยกเว้น PHP

PHP OOP

PHP OOP คืออะไร คลาส PHP/วัตถุ ตัวสร้าง PHP PHP Destructor PHP Access Modifiers PHP Inheritance ค่าคงที่ PHP PHP Abstract Classes อินเทอร์เฟซ PHP PHP ลักษณะ PHP Static Methods PHP คุณสมบัติคงที่ PHP เนมสเปซ PHP Iterables

ฐานข้อมูลMySQL

ฐานข้อมูล MySQL MySQL Connect MySQL สร้าง DB MySQL สร้างตาราง MySQL แทรกข้อมูล MySQL รับ ID ล่าสุด MySQL แทรกหลายรายการ MySQL ที่เตรียมไว้ MySQL Select Data MySQL Where MySQL สั่งซื้อโดย MySQL ลบข้อมูล ข้อมูลอัพเดต MySQL MySQL Limit Data

PHP XML

PHP XML Parsers PHP SimpleXML Parser PHP SimpleXML - รับ PHP XML Expat PHP XML DOM

PHP - AJAX

บทนำ AJAX AJAX PHP ฐานข้อมูล AJAX AJAX XML AJAX ค้นหาสด AJAX โพล

ตัวอย่างPHP

ตัวอย่าง PHP PHP คอมไพเลอร์ แบบทดสอบ PHP แบบฝึกหัด PHP ใบรับรอง PHP

ข้อมูลอ้างอิงPHP

ภาพรวม PHP PHP Array ปฏิทิน PHP PHP วันที่ ไดเรกทอรี PHP ข้อผิดพลาด PHP ข้อยกเว้น PHP ระบบไฟล์ PHP ตัวกรอง PHP PHP FTP PHP JSON คีย์เวิร์ด PHP PHP Libxml PHP Mail PHP คณิตศาสตร์ PHP เบ็ดเตล็ด PHP MySQLi เครือข่าย PHP การควบคุมเอาต์พุต PHP PHP RegEx PHP SimpleXML PHP Stream PHP String การจัดการตัวแปร PHP PHP XML Parser PHP Zip เขตเวลา PHP

PHP SimpleXML Parser


SimpleXML คือส่วนขยาย PHP ที่ช่วยให้เราจัดการและรับข้อมูล XML ได้อย่างง่ายดาย


ตัวแยกวิเคราะห์ SimpleXML

SimpleXML เป็นตัวแยกวิเคราะห์แบบต้นไม้

SimpleXML มอบวิธีง่ายๆ ในการรับชื่อองค์ประกอบ คุณลักษณะและเนื้อหาที่เป็นข้อความ หากคุณทราบโครงสร้างหรือเค้าโครงของเอกสาร XML

SimpleXML เปลี่ยนเอกสาร XML ให้เป็นโครงสร้างข้อมูลที่คุณทำซ้ำได้ เช่น คอลเล็กชันของอาร์เรย์และอ็อบเจ็กต์

เมื่อเปรียบเทียบกับ DOM หรือตัวแยกวิเคราะห์ Expat แล้ว SimpleXML ใช้โค้ดน้อยกว่าบรรทัดเพื่ออ่านข้อมูลข้อความจากองค์ประกอบ


การติดตั้ง

จาก PHP 5 ฟังก์ชัน SimpleXML เป็นส่วนหนึ่งของแกนหลักของ PHP ไม่จำเป็นต้องติดตั้งเพื่อใช้ฟังก์ชันเหล่านี้


PHP SimpleXML - อ่านจากสตริง

ฟังก์ชัน PHP simplexml_load_string()ใช้ในการอ่านข้อมูล XML จากสตริง

สมมติว่าเรามีตัวแปรที่มีข้อมูล XML เช่นนี้

$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>";

ตัวอย่างด้านล่างแสดงวิธีการใช้simplexml_load_string()ฟังก์ชันเพื่ออ่านข้อมูล XML จากสตริง:

ตัวอย่าง

<?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);
?>

ผลลัพธ์ของโค้ดด้านบนจะเป็น:

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

เคล็ดลับในการจัดการข้อผิดพลาด:ใช้ฟังก์ชัน libxml เพื่อดึงข้อมูลข้อผิดพลาด XML ทั้งหมดเมื่อโหลดเอกสารแล้ววนซ้ำข้อผิดพลาด ตัวอย่างต่อไปนี้พยายามโหลดสตริง XML ที่เสียหาย:

ตัวอย่าง

<?php
libxml_use_internal_errors(true);
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<document>
<user>John Doe</wronguser>
<email>[email protected]</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);
}
?>

ผลลัพธ์ของโค้ดด้านบนจะเป็น:

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 - อ่านจากไฟล์

ฟังก์ชัน PHP simplexml_load_file()ใช้เพื่ออ่านข้อมูล XML จากไฟล์

สมมติว่าเรามีไฟล์ XML ชื่อ " note.xml " ซึ่งมีลักษณะดังนี้:

<?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>

ตัวอย่างด้านล่างแสดงวิธีใช้simplexml_load_file()ฟังก์ชันเพื่ออ่านข้อมูล XML จากไฟล์:

ตัวอย่าง

<?php
$xml=simplexml_load_file("note.xml") or die("Error: Cannot create object");
print_r($xml);
?>

ผลลัพธ์ของโค้ดด้านบนจะเป็น:

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

เคล็ดลับ:บทต่อไปแสดงวิธีการรับ/ดึงค่าโหนดจากไฟล์ XML ด้วย SimpleXML!


เพิ่มเติม PHP SimpleXML

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับฟังก์ชัน PHP SimpleXML โปรดไปที่ PHP SimpleXML Referenceของเรา