3

次の XML ファイルを php simplexml にロードしました。

<adf>
<prospect>
<customer>
<name part="first">Bob</name>
<name part="last">Smith</name>
</customer>
</prospect>
</adf>

使用して

$customers = new SimpleXMLElement($xmlstring); 

これは「Bob」を返しますが、姓を返すにはどうすればよいですか?

echo $customers->prospect[0]->customer->contact->name;
4

1 に答える 1

12

<name>配列スタイルの構文を使用して、さまざまな要素に番号でアクセスできます。

$names = $customers->prospect[0]->customer->name;

echo $names[0]; // Bob
echo $names[1]; // Smith

実際、あなたはすでに要素のためにそれをやってい<prospect>ます!

マニュアルの基本的な SimpleXML の使用法も参照してください。


いくつかの基準に基づいて要素を選択する場合は、 XPathが使用するツールです。

$customer   = $customers->prospect[0]->customer;
$last_names = $customer->xpath('name[@part="last"]'); // always returns an array
echo $last_names[0]; // Smith
于 2012-08-15T20:09:29.543 に答える