[PHP-users 28904] Re: 名前空間の取得について

KAWASAKI, Shingo s.kawasaki @ media-trust.com
2006年 3月 29日 (水) 18:38:24 JST


川崎です。


あだち様、ありがとうございます。

以下の様に組んでみたところ、

  $rss = new DOMDocument('1.0');
  $rss->load($xml_url);
  $test = $rss->DOMElement->lookupNamespaceURI('itunes');
  print_r($test."<BR>");
  $this->rss = simplexml_import_dom($rss);

3行目の【$test = $rss->DOMElement->lookupNamespaceURI('itunes');】に該当する行で、
【Fatal error: Call to a member function lookupNamespaceURI() on a non-object in /ソースのファイルパス】

と言うエラーが発生します。


ネットで情報を探すと
DOMNode->lookupNamespaceURI()
とかいてあるドキュメントがみつかったので、今度は、
$test = $rss->DOMNode->lookupNamespaceURI('itunes');
と記述したのですが、やはり該当行で
【Fatal error: Call to a member function lookupNamespaceURI() on a non-object in /ソースのファイルパス】

と出てしまいます。。


$test = $rss->DOMElement->lookupNamespaceURI('itunes');
の行を外してみると、それ以降の処理は問題なく走っている模様です。


この状態で何か分かることがあればご教示お願いします。



> あだちです
> 
> DOM Functionsには"DOMElement->lookupNamespaceURI"というメソッドがあります
> DOMとsimpleXMLは相互変換機能があるので次のような感じで
> 
> 
> //ITUNESを取得するまではDOM
> $rss = new DOMDocument('1.0');
> $rss->load('http://aaa.bbbb.jp/rss2.0.xml');
> const ITUNES = $rss->DOMElement->lookupNamespaceURI('itunes');
> 
> //取得後はsimpleXML
> $this->rss = simplexml_import_dom($rss);
> ...
> 
> #この場合ITUNESは変数なのでプロパティにしたほうが応用が利くかも。
> #スレッド切れます。ごめんなさい。
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3
> 

====================

  株式会社メディア・トラスト
  川崎 晋護 (Kawasaki Shingo)
  Tel :06-6346-6301
  Fax :06-6346-6302
  s.kawasaki @ media-trust.com
  〒530-0003
  大阪市北区堂島1-1-5 梅田新道ビル10F

====================




PHP-users メーリングリストの案内