PHPで単純なXMLを使用してノード名を取得する方法
PHPの単純なXMLのgetName()を使用してノード名を取得しようとしましたが、理由がわかりません。助けてください。 🎜>
xml ファイルの内容はおおよそ次のとおりです
PHP コード:
$xmldoc=simplexml_load_file("test.xml");
foreach($xmldoc->children() as $child) {
foreach($child- >attributes() as $a=>$b) {
echo $b;// 属性値を出力しても問題ありません
}
echo $child ->getName();//しかし、ノード名を入力しようとするとエラーが発生します。
}
論理的には new1 collection になるはずですが、 new1 は出てくるのですが、どうやって collection を入力すれば出てこないのでしょうか?ページでは理由がわかりません。 getName() が間違っているのでしょうか?
-----解決策---------
問題ありません
PHP のバージョンに関係している可能性があります
------解決策------XML と PHP の変換カプセル化関数: xmlparse. 🎜>
PHP コード
<コレクションid="new1">
<カテゴリ>aaaカテゴリ>
コレクション>
XML。
require(dirname(__FILE__)."/xmlparse.php");
$cont = parse_xml_config($contxml,"root");
$keys = array_keys($cont);
$key1 = array_keys($cont['collection']);
print_r($cont); #Array ( [コレクション] => 配列 ( [カテゴリ] => aaa ) [エンコーディング] => UTF-8 )
print_r($keys); #Array ( [0] => コレクション [1] => エンコード)
print_r($key1); #Array ( [0] => カテゴリ )
?>
------解決策---------<br><font color="#e78608">php5.3 に問題があります</font> <br>