दिलचस्प पोस्ट
दो तालिकाओं के बीच अंतर वापसी करने के लिए एसक्यूएल क्वेरी एक दुभाषिया / संकलक काम कैसे करता है एएसपी.नेट अपडेटपैनेल में ग्रिडव्यू जेक्जरी डेमेक्चर किसी फ़ाइल को एक शब्दकोश में कैसे रूपांतरित करना है? Google मानचित्र एपीआई वी 3 में कैसे लैट लाँगटॉडीपिक्सेल से कॉल करें? आप अलग git मर्ज रणनीति का उपयोग कब करेंगे? नक्शा v2 में कस्टम डेटा के साथ कस्टम जानकारी विंडो एडॉप्टर सबसे अच्छा PHP इनपुट सफाई कार्यों क्या हैं? अजगर में कार्य को स्थगित करना स्विफ्ट मूल बेस क्लास या एनएसओबीजेक्ट सुंदर सूप हो रही href सी # में झंडे की तुलना कैसे करें? रिलीज़ एंड्रॉइड ऐप में पूरी तरह से लॉगकैट आउटपुट अक्षम करें? जीएसएन में एक अमूर्त वर्ग की अवधारणा किसी स्ट्रिंग पर क्रमबद्ध करें जिसमें कोई संख्या हो सकती है

PHP के DOM Parser का उपयोग करते हुए XML से एक नोड विशेषता को निकालने के लिए

मैंने पहले कभी DOM पार्सर का उपयोग नहीं किया है और अब मेरे पास एक सवाल है

मैं इस मार्कअप से यूआरएल निकालने के बारे में कैसे जाना होगा:

<files> <file path="http://www.thesite.com/download/eysjkss.zip" title="File Name" /> </files> 

वेब के समाधान से एकत्रित समाधान "PHP के DOM Parser का उपयोग करते हुए XML से एक नोड विशेषता को निकालने के लिए"

सरल एक्सएमएल का उपयोग करना:

 $xml = new SimpleXMLElement($xmlstr); echo $xml->file['path']."\n"; 

आउटपुट:

 http://www.thesite.com/download/eysjkss.zip 

ऐसा करने के लिए आप DOM के साथ करते हैं

 $dom = new DOMDocument; $dom->load( 'file.xml' ); foreach( $dom->getElementsByTagName( 'file' ) as $file ) { echo $file->getAttribute( 'path' ); } 

आप इसे XPath के साथ भी कर सकते हैं:

 $dom = new DOMDocument; $dom->load( 'file.xml' ); $xPath = new DOMXPath( $dom ); foreach( $xPath->evaluate( '/files/file/@path' ) as $path ) { echo $path->nodeValue; } 

या सीधे एक स्ट्रिंग मान के रूप में:

 $dom = new DOMDocument; $dom->load( 'file.xml' ); $xPath = new DOMXPath( $dom ); echo $xPath->evaluate( 'string(/files/file/@path)' ); 

आप मैन्युअल रूप से DOM को पार करके व्यक्तिगत नोड भी प्राप्त कर सकते हैं

 $dom = new DOMDocument; $dom->preserveWhiteSpace = FALSE; $dom->load( 'file.xml' ); echo $dom->documentElement->firstChild->getAttribute( 'path' ); 

इस सीडब्ल्यू को चिह्नित करते हुए, क्योंकि इसका उत्तर कई बार (अलग-अलग तत्वों के साथ) के उत्तर में दिया गया है, मेरे सहित, लेकिन मैं डुप्लिकेट खोजने के लिए बहुत आलसी हूं।

आप PHP सरल HTML DOM Parser का उपयोग कर सकते हैं, यह एक php पुस्तकालय है। http://simplehtmldom.sourceforge.net/