แปลงไฟล์ XML เป็นวัตถุ SimpleXMLElement แล้วส่งออกคีย์และองค์ประกอบของวัตถุ:
<?php$xml=simplexml_load_file("note.xml");print_r($xml);?>ฟังก์ชัน simplexml_load_file() จะแปลงไฟล์ XML ที่ระบุเป็นวัตถุ SimpleXMLElement
simplexml_load_file( ไฟล์,ชื่อคลาส,ตัวเลือก,ns,is_prefix );
พารามิเตอร์ | อธิบาย |
---|---|
ไฟล์ | ที่จำเป็น. ระบุเส้นทางไฟล์ XML |
ชื่อคลาส | ไม่จำเป็น. ระบุคลาสของวัตถุใหม่ |
ตัวเลือก | ไม่จำเป็น. ระบุพารามิเตอร์ Libxml เพิ่มเติม ตั้งค่าโดยการระบุตัวเลือกเป็น 1 หรือ 0 (TRUE หรือ FALSE เช่น LIBXML_NOBLANKS(1)) ค่าที่เป็นไปได้: LIBXML_COMPACT - เปิดใช้งานการกำหนดค่าโหนดที่ได้รับการปรับปรุงให้เหมาะสม (สามารถเพิ่มความเร็วแอปพลิเคชัน) LIBXML_DTDATTR - ตั้งค่าแอตทริบิวต์ DTD เริ่มต้น LIBXML_DTDLOAD - โหลดชุดย่อยเพิ่มเติม LIBXML_DTDVALID - ตรวจสอบความถูกต้องของ DTD LIBXML_NOBLANKS - ลบโหนดว่าง LIBXML_NOCDATA - ตั้งค่า CDATA เป็นโหนดข้อความ LIBXML_NOEMPTYTAG - ขยายแท็กว่าง (เช่น <br/> เป็น <br></br>) ใช้ได้เฉพาะในฟังก์ชัน DOMDocument->save() และ DOMDocument->saveXML() LIBXML_NOENT - เอนทิตีทดแทน LIBXML_NOERROR - อย่าแสดงรายงานข้อผิดพลาด LIBXML_NONET - หยุดการเข้าถึงเครือข่ายขณะโหลดเอกสาร LIBXML_NOWARNING - อย่าแสดงรายงานคำเตือน LIBXML_NOXMLDECL - ละทิ้งการประกาศ XML เมื่อจัดเก็บเอกสาร LIBXML_NSCLEAN - ลบการประกาศเนมสเปซที่ซ้ำซ้อน LIBXML_PARSEHUGE - ตั้งค่าสถานะ XML_PARSE_HUGE ซึ่งจะผ่อนคลายข้อจำกัดใดๆ ที่กำหนดโดย parser ซึ่งจะส่งผลต่อสิ่งต่างๆ เช่น ความลึกสูงสุดของเอกสารและขีดจำกัดขนาดโหนดข้อความ LIBXML_XINCLUDE - ใช้ XInclude แทน LIBXML_ERR_ERROR - รับข้อผิดพลาดที่แก้ไขได้ LIBXML_ERR_FATAL - รับข้อผิดพลาดร้ายแรง LIBXML_ERR_NONE - ไม่ได้รับข้อผิดพลาด LIBXML_ERR_WARNING - รับคำเตือนง่ายๆ LIBXML_VERSION - รับเวอร์ชัน libxml (เช่น 20605 หรือ 20617) LIBXML_DOTTED_VERSION - รับเวอร์ชัน libxml แบบจุด (เช่น 2.6.5 หรือ 2.6.17) |
ns | ไม่จำเป็น. ระบุคำนำหน้าเนมสเปซหรือ URI |
is_prefix | ไม่จำเป็น. ระบุค่าบูลีน TRUE ถ้า ns เป็นคำนำหน้า FALSE ถ้า ns เป็น URI ค่าเริ่มต้นคือ FALSE |
ค่าส่งคืน: | ส่งคืนวัตถุ SimpleXMLElement หากสำเร็จ หรือ FALSE หากล้มเหลว |
---|---|
เวอร์ชัน PHP: | 5+ |
สมมติว่าเรามีไฟล์ XML ต่อไปนี้ "note.xml":
<?xml version="1.0" encoding="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don สุดสัปดาห์นี้อย่าลืมฉัน!</body></note>
ข้อมูลขาออกสำหรับแต่ละองค์ประกอบในไฟล์ XML:
<?php$xml=simplexml_load_file("note.xml");echo $xml->to . "<br>";echo $xml->from . "<br>";echo $xml->หัวข้อ br>";echo $xml->ร่างกาย;?>เอาท์พุทชื่อองค์ประกอบและข้อมูลของแต่ละโหนดลูกในไฟล์ XML:
<?php$xml=simplexml_load_file("note.xml");echo $xml->getName() . "<br>";foreach($xml->children() เป็น $child) { echo $child->getName () . ": " . $child . "<br>";