簡體   English   中英

使用PHP DOMDocument解析XML

[英]Parsing XML with PHP DOMDocument

我一直在尋找一種解決方案,但找不到任何解決方案。

我試圖解析XML文件,但某些TagNames從缺XML 一些帖子建議使用對象長度,但這也不起作用。

if ($xmlObject->item($i)->getElementsByTagName('image1')->item(0)->childNodes->item(0)->length > 0) {
    $product_image1 = $xmlObject->item($i)->getElementsByTagName('image1')->item(0)->childNodes->item(0)->nodeValue;
} else {
    $product_image1 = "";
} 

注意:嘗試在第72行的/home/s/public_html/import_xml.php中獲取非對象的屬性

致命錯誤:在第72行的/home/s/public_html/import_xml.php中的非對象上調用成員函數item()

該錯誤是因為XML中缺少<image1>

有任何解決辦法嗎?

這就是我所做的。 不確定它的“最佳”方式,但是它可以工作...

foreach ($xmlDoc->getElementsByTagName('product')->item($i)->childNodes as $node) {
    if ($node->nodeType === XML_ELEMENT_NODE) {
        $nodes[] = $node->nodeName;
        echo "Processing node " . $node->nodeName . "<br />";
    }
}

if (in_array("name", $nodes)) {
    $product_name = $xmlObject->item($i)->getElementsByTagName('name')->item(0)->childNodes->item(0)->nodeValue;
} else {
    $product_name = "";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM