PHP5のSimpleXMLにて下記のXMLの値を取得したいのですが、<part p="d">や<part p="n">

の下にある<icon>や<t>の値が取得できません。children()を使用して取得するのでしょうか?
試してみましたがうまくいきません・・。どなたかお教え頂ければ幸いです。

<day d="0" t="Friday" dt="Jan 2">
<hi>40</hi>
<low>17</low>
<sunr>7:36 AM</sunr>
<suns>5:01 PM</suns>

<part p="d">
<icon>30</icon>
<t>Partly Cloudy</t>

<wind>
<s>5</s>
<gust>N/A</gust>
<d>308</d>
<t>NW</t>
</wind>
<bt>P Cloudy</bt>
<ppcp>0</ppcp>
<hmid>30</hmid>
</part>

<part p="n">
<icon>33</icon>
<t>Mostly Clear</t>

<wind>
<s>7</s>
<gust>N/A</gust>
<d>346</d>
<t>NNW</t>
</wind>
<bt>M Clear</bt>
<ppcp>0</ppcp>
<hmid>46</hmid>
</part>
</day>

回答の条件
  • 1人2回まで
  • 登録:2009/01/02 12:38:45
  • 終了:2009/01/03 12:06:15

回答(1件)

id:ryuzee No.1

Ryuzee回答回数19ベストアンサー獲得回数12009/01/02 17:17:04

ポイント100pt

SimpleXMLでは、値をオブジェクトとして保持します

以下のようにしてみてはどうでしょうか。

$xml = simplexml_load_file('test1.xml');

print_r($xml->part[0]);

print_r($xml->part[0]->icon);

print_r($xml->part[0]->t);

print_r($xml->part[1]->icon);

print_r($xml->part[1]->t);

id:grandslam

有難う御座いました。うまく出来ました。xpathを使用した方法でも出来ましたので、併用してみようと思います。ありがとうございます。

2009/01/02 17:46:51
  • id:kgbn
    下記のサイトをご覧下さい。

    http://lab.aica.ac.jp/tips/tips/phpxml.html


    エレメント(Node)へのアクセスは「->ノード名」を
    属性(Attribute)へのアクセスは["属性名"]を利用して参照する事が出来ます。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません