"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > मैं SimpleXML और DOMDocument का उपयोग करके XPath नोड को कैसे हटा सकता हूँ?

मैं SimpleXML और DOMDocument का उपयोग करके XPath नोड को कैसे हटा सकता हूँ?

2024-11-08 को प्रकाशित
ब्राउज़ करें:453

How Can I Delete an XPath Node Using SimpleXML and DOMDocument?

SimpleXML: एक XPath नोड को हटाना

इस लेख में, हम यह पता लगाएंगे कि XML दस्तावेज़ से पैरेंट नोड को प्रभावी ढंग से कैसे हटाया जाए SimpleXML और XPath.

SimpleXML को समझना सीमाएं

प्रदान किया गया कोड XPath के माध्यम से ढूंढने के बाद पैरेंट नोड को हटाने के लिए SimpleXML का उपयोग करने का प्रयास करता है। हालाँकि, SimpleXML का unset() फ़ंक्शन केवल एक वेरिएबल में संग्रहीत ऑब्जेक्ट संदर्भ को हटाता है, नोड को नहीं। DOMDocument का उपयोग करना, जो XML दस्तावेज़ों की संरचना में अधिक सीधे हेरफेर करता है।

समाधान का उपयोग करना DOMDocument

एक DOMDocument ऑब्जेक्ट बनाएं और उसमें XML फ़ाइल लोड करें।

क्वेरी करने के लिए XPath का उपयोग करें और लक्ष्य नोड का चयन करें।

पैरेंट को हटाएं नोड का उपयोग करना $node->parentNode->removeChild($node).
  1. उदाहरण कोड और आउटपुट
$doc = new DOMDocument; $doc->loadXML(...); $आइटम_आईडी = 456; $xpath = नया DOMXpath($doc); foreach($xpath->query('//items[info/item_id='' . $item_id . '']') as $node) { $नोड->parentNode->removeChild($नोड); } echo $doc->saveXML();

यह कोड आइटम_आईडी 456 वाले उत्पाद के लिए नोड को हटा देता है, जिसके परिणामस्वरूप उस नोड के बिना एक संशोधित XML दस्तावेज़ बन जाता है।

$doc = new DOMDocument;
$doc->loadXML(...);
$item_id = 456;

$xpath = new DOMXpath($doc);
foreach($xpath->query('//items[info/item_id="' . $item_id . '"]') as $node) {
  $node->parentNode->removeChild($node);
}
echo $doc->saveXML();

DOMDocument नोड्स को सीधे हटाने सहित XML दस्तावेज़ों के अधिक मजबूत हेरफेर की अनुमति देता है। जबकि SimpleXML बुनियादी XPath प्रश्नों के लिए सुविधाजनक हो सकता है, DOMDocument अधिक जटिल XML हेरफेर कार्यों के लिए अधिक उपयुक्त विकल्प है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3