प्राप्त करने के लिए PHP का उपयोग करना मैं PHP में DOMElement ऑब्जेक्ट का उपयोग करने के तरीके को समझने में बड़ी समय से संघर्ष कर रहा हूं। मैं इस कोड पाया, लेकिन मैं वास्तव में मेरे लिए यकीन है कि यह लागू है नहीं कर रहा हूँ:डीओएम एलिमेंट
$dom = new DOMDocument();
$dom->loadHTML("index.php");
$div = $dom->getElementsByTagName('div');
foreach ($div->attributes as $attr) {
$name = $attr->nodeName;
$value = $attr->nodeValue;
echo "Attribute '$name' :: '$value'<br />";
}
असल में मैं क्या एक विशेष id
के साथ एक element
के लिए डोम खोज करने के लिए है की जरूरत है, और इसके बाद मैं एक गैर निकालने के लिए की जरूरत है -मानक attribute
(यानी जिसे मैंने बनाया और जेएस के साथ रखा) ताकि मैं इसका मूल्य देख सकूं। कारण है कि मुझे $_GET
से एक टुकड़ा चाहिए और एक टुकड़ा जो एचटीएमएल में एक रीडायरेक्ट से आधारित है। अगर कोई इस बात के लिए सिर्फ डीओएमडी दस्तावेज़ का उपयोग कैसे कर सकता है, तो यह सहायक होगा। मैं वास्तव में समझ रहा हूं कि क्या हो रहा है और इसे ठीक से कैसे कार्यान्वित किया जाए, क्योंकि मैं स्पष्ट रूप से इसे सही नहीं कर रहा हूं।
संपादित करें (जहाँ मैं टिप्पणी के आधार पर पर हूँ):
<div id="column_profile">
<?php
require_once($_SERVER["DOCUMENT_ROOT"] . "/peripheral/profile.php");
$searchResults = isset($_GET["s"]) ? performSearch($_GET["s"]) : "";
$dom = new DOMDocument();
$dom->load("index.php");
$divs = $dom->getElementsByTagName('div');
foreach ($divs as $div) {
foreach ($div->attributes as $attr) {
$name = $attr->nodeName;
$value = $attr->nodeValue;
echo "Attribute '$name' :: '$value'<br />";
}
}
$div = $dom->getElementById('currentLocation');
$attr = $div->getAttribute('srckey');
echo "<h1>{$attr}</a>";
?>
</div>
<div id="column_main">
यहाँ मैं हो रही है त्रुटि संदेश है:
इस संदर्भ के लिए मेरी कोड लाइनों 4-26 है:
Warning: DOMDocument::load() [domdocument.load]: Extra content at the end of the document in ../public_html/index.php, line: 26 in ../public_html/index.php on line 10
Fatal error: Call to a member function getAttribute() on a non-object in ../public_html/index.php on line 21
'index.hp' निष्पादित नहीं किया जाएगा। 'लोड HTML' फ़ाइल की सामग्री को पढ़ता है, यह इसे नहीं चलाता है। आपको कुछ ऐसा करने की आवश्यकता हो सकती है: '$ dom-> loadHTML (file_get_contents ('http: //localhost/index.php'))'। –