2012-07-20 12 views
10

क्षमा करें अगर इसे दोबारा पोस्ट किया गया है, लेकिन मैं इसके आस-पास अपने दिमाग को लपेट नहीं सकता और मैंने सभी उपलब्ध दस्तावेज और उदाहरणों को आजमाया है।DOMDocument :: loadHTML के साथ टैग नाम से डीओएम तत्व प्राप्त करें और getElementsByTagName

मैं स्ट्रिंग वाली एचटीएमएल

पीएचपी

$html = '<p><img src="http://placekitten.com/200/300" alt="" width="200" height="300" /></p>'; 
$dom = new DOMDocument; 
$dom->loadHTML($html); 
$imgs = $dom->getElementsByTagName('img'); 
var_dump($imgs); 

यह थूक object(DOMNodeList)#57 (0) { } के पहले img तत्व प्राप्त करने के लिए जब यह एक घटना खोजना चाहिए कोशिश कर रहा हूँ।

मैंने XPath के साथ कोई भाग्य के साथ प्रयास नहीं किया है।

उत्तर

16

इस का उपयोग करें:

$img = $dom->getElementsByTagName('img')->item(0); 
echo $img->attributes->getNamedItem("src")->value; 
+0

यही काम किया, धन्यवाद। मैं पूरे तत्व को कैसे प्राप्त करूं? –

+0

आप विशेष रूप से क्या प्राप्त करना चाहते हैं? ? पूरे तत्व को मेरे उत्तर में '$ img' चर में DOM के माध्यम से पहुंचा जा सकता है। – nickb

+0

मैं पहले से ही आपके उत्तर के साथ सफल हुआ हूं, लेकिन मुझे '$ img' की कार्यप्रणाली जानने के लिए उत्सुकता है, इसलिए यानी सभी तत्व प्राप्त करें (' echo $ img; 'केवल तत्व मुद्रित नहीं करता है)। –

संबंधित मुद्दे