0
foreach($xml->property as $property ){
   foreach($property as $type){
$id = mysql_real_escape_string($property->id);
echo "ID: ".$id."<br/>";
$type = mysql_real_escape_string($type->uk);
echo "Type: ".$type."<br/>";

} }

今xmlファイルの要素をエコーし​​たいのですが、IDは正常にエコーされていますが、タイプに到達できません。上記のコードでこれを行うと、ループよりもIDが2倍になり、タイプが取得されますが、私が望むように動作していないので、foreach..を使用せずにサブ要素を取得するにはどうすればよいですか?

編集:また、エコーの後にデータベースに追加する必要があるため、このようなものが必要です..

免除

<propery>
<ID>R123412</ID>
<type>
<uk>Apartmen</uk>
</type>
</propery>
4

1 に答える 1

0
$string = <<<XML
<?xml version='1.0'?> 
<propery>
<ID>R123412</ID>
<type>
<uk>Apartmen</uk>
</type>
</propery>
XML;

$xml = simplexml_load_string($string);

//print_r($xml);
foreach ($xml as $key => $value) {  
    if (is_object($value))
        foreach ($value as $k => $v) {
            echo "   ".$v;// because is object meens somthing under (the)
                   //you can also filter by keyname($key) 
        }
    echo "   ".$value; //this is the ID, you can also filter by keyname($key) 

}

結果は次のとおりです。 R123412 Apartmen

于 2013-06-06T15:51:01.440 に答える