PHP में XML के साथ कार्य: पार्सिंग, निर्माण और डेटा प्रसंस्करण

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

PHP में XML के साथ कार्य: डेवलपर्स के लिए संपूर्ण मार्गदर्शिका



XML (eXtensible Markup Language) डेटा आदान-प्रदान, एप्लिकेशन कॉन्फ़िगरेशन और बाहरी सेवाओं के साथ एकीकरण के लिए प्रमुख प्रारूपों में से एक बना हुआ है। PHP XML के साथ कार्य करने के लिए कई शक्तिशाली उपकरण प्रदान करता है, जिनमें से प्रत्येक विभिन्न परिदृश्यों के लिए उपयुक्त है। इस लेख में, हम आधुनिक PHP-डेवलपमेंट में उपयोग की जाने वाली मुख्य लाइब्रेरी और दृष्टिकोणों पर विस्तार से चर्चा करेंगे।



XML के साथ कार्य के लिए PHP के मुख्य उपकरण



PHP में XML के साथ कार्य करने के लिए तीन मुख्य एक्सटेंशन हैं, जिनमें से प्रत्येक की अपनी विशेषताएं और अनुप्रयोग क्षेत्र हैं:



  • SimpleXML — XML पढ़ने के लिए सरल और सहज पार्सर। छोटी फ़ाइलों और त्वरित प्रसंस्करण के लिए आदर्श।
  • DOMDocument — XML दस्तावेज़ों के साथ कार्य के लिए W3C DOM का पूर्ण कार्यान्वयन। पढ़ने, लिखने, संशोधन और सत्यापन का समर्थन करता है।
  • XMLReader / XMLWriter — बड़ी XML फ़ाइलों (सैकड़ों मेगाबाइट और गीगाबाइट) के साथ कार्य के लिए स्ट्रीमिंग पार्सर।


1. SimpleXML — त्वरित शुरुआत



SimpleXML आपको XML स्ट्रिंग या फ़ाइल को एक ऑब्जेक्ट में बदलने की अनुमति देता है, जिसके साथ आप सामान्य ऐरे या ऑब्जेक्ट की तरह कार्य कर सकते हैं। सरल कार्यों के लिए यह सबसे लोकप्रिय विकल्प है।



<?php// स्ट्रिंग से XML पढ़ना$xmlString = '<books>    <book id="1">        <title>PHP शुरुआती के लिए</title>        <author>इवान पेत्रोव</author>        <price currency="RUB">1500</price>    </book>    <book id="2">        <title>XML विस्तार से</title>        <author>अन्ना स्मिर्नोवा</author>        <price currency="RUB">2000</price>    </book></books>';

$xml = simplexml_load_string($xmlString);

// डेटा तक पहुंचforeach ($xml->book as $book) { echo "ID: " . $book['id'] . ""; echo "शीर्षक: " . $book->title . ""; echo "लेखक: " . $book->author . ""; echo "मूल्य: " . $book->price . " " . $book->price['currency'] . "

";}

// नया XML बनाना$newXml = new SimpleXMLElement('<catalog/>');$product = $newXml->addChild('product');$product->addAttribute('sku', 'P001');$product->addChild('name', 'लैपटॉप');$product->addChild('price', 55000);

echo $newXml->asXML();?>


2. DOMDocument — पूर्ण नियंत्रण



DOMDocument Document Object Model तक पूर्ण पहुंच प्रदान करता है। आप किसी भी नोड को बना, संशोधित और हटा सकते हैं, साथ ही डेटा खोजने के लिए XPath क्वेरी निष्पादित कर सकते हैं।



<?php$dom = new DOMDocument('1.0', 'UTF-8');$dom->formatOutput = true;

// रूट एलिमेंट बनाना$root = $dom->createElement('employees');$dom->appendChild($root);

// कर्मचारी जोड़ना$employee = $dom->createElement('employee');$employee->setAttribute('id', '101');

$name = $dom->createElement('name', 'अलेक्से कुज़नेत्सोव');$employee->appendChild($name);

$position = $dom->createElement('position', 'डेवलपर');$employee->appendChild($position);

$root->appendChild($employee);

// XPath क्वेरी$xpath = new DOMXPath($dom);$query = "//employee[@id='101']/name";$result = $xpath->query($query);

if ($result->length > 0) { echo "मिला: " . $result->item(0)->nodeValue;}

// फ़ाइल में सहेजना$dom->save('employees.xml');?>


3. XMLReader और XMLWriter — बड़े डेटा के लिए



जब XML फ़ाइलें मेमोरी में लोड करने के लिए बहुत बड़ी हो जाती हैं (10-50 MB से अधिक), तो स्ट्रीमिंग पार्सर मदद करते हैं। XMLReader दस्तावेज़ को नोड दर नोड पढ़ता है, और XMLWriter XML को भागों में बनाता है।



<?php// बड़ी XML फ़ाइल पढ़ना$reader = new XMLReader();$reader->open('large_data.xml');

while ($reader->read(

अनुशंसाएँ