0

内部 domDocument をクラスに使用していますが、動作する$this->doc->domので問題ないと思い$this->doc->dom->saveXML()ます。XML を次のように表示します。

  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
      <title>04</title>
      <link href="css/04.css" rel="stylesheet" type="text/css"/>
    </head>
   ...

そして、私が使用するとき

 $xpath = new DOMXpath($this->doc->dom);
 $elements = $xpath->query('//link'); 

エラーは報告されていません...しかし、要素はありません(!)、

   print $elements->length;

0 (ゼロ) を表示します。それが問題であり、私にとっては DomDocument BUG です:<link ../>要素はそこにあります!


編集して手がかりを追加...

同様のことをするとうまくいきますgetElementsByTagName()(!)ので、問題ありません$this->doc->dom

 $test = $this->doc->dom->getElementsByTagName('link');
 print $test->length; // OK, not zero, returns 1!
4

1 に答える 1