PHP5: DOMDocument Kök düğümü bulun

3 Cevap php

Ben bir PHP5 DOMDocument var ve kök düğümü (değil kök öğe) bulmaya çalışın.

Örnek:

<test>
    <element>
        <bla1>x</bla1>
        <bla2>x</bla2>
    </element>
    <element>
        <bla1>y</bla1>
        <bla2>y</bla2>
    </element>
    <element>
        <bla1>z</bla1>
        <bla2>z</bla2>
    </element>
</test>

- Örneğin - hasChildNodes Aramam böylece "test" DOMNode almak istiyorum. Ben "documentElement'in" alabilirsiniz, ama bu bir DOMElement bulunuyor. Belki oradan gidebilirsiniz?

$d = DOMDocument::loadXML($xml);
// [... do some stuff here to find document's root node ...]
if ($rootnode->hasChildNodes()) echo 'yayy!'

Kim boşluğu doldurabilir? Ben kör gibi görünüyor.

(Açıkçası ben aramak istiyorum sadece hasChildNodes değil - yani HAYIR, bu belge şeyler içeriyorsa öğrenmek için başka bir yöntem bulmak için yardımcı olmuyor bu sadece benim basit bir örnek için var ben sonunda bir DOMNode gerekir...)

3 Cevap

PHP Docs göre DOMElement is a subclass of DOMNode, bu nedenle hasChildNodes alması gerektiğini () yöntemi.

DOMElement uzanan DOMNode.

Sen $ d-> documentElement'in tarafından Root DOMElement olsun.

DOM Model-W3C değişen türdeki düğümler bir ağaç yapısı halinde DOM bozuldu. Düğüm arayüzü tüm elemanlar için temel arayüz. Bu arabirim uygulayan tüm nesneler çocuklarla başa çıkmak için yöntemler ortaya.

$dom=new DomDocument;
$dom->Load("file.xml");
$root=$dom->documentElement; // Root node