1

次のフィードで、xpath を使用して type 要素の名前属性を取得しようとしています。

<response request="getHierarchyByMarketType" code="001" 
          message="success" debug="">    
<jonny>    
  <class id="5" name="Formula 1" maxRepDate="2012-12-19" maxRepTime="15:03:34">    
    <type id="4558" name="F1 Championship" lastUpdateDate="2012-11-26"
          lastUpdateTime="16:17:33">

これを行うために私は使用しています

$market_name = $wh_xml->xpath('/response/jonny/class/type/@name');

そして使用する

<h2>
  <?= $market_name ?>
</h2>

私の見解では、期待される「F1チャンピオンシップ」を返す代わりに、次のようになります。

配列から文字列への変換

気がつきましたが、理由はわかりませんが、xpath は の値を文字列として返すと思って@nameいましたか?

4

2 に答える 2

2

編集: list() を使用して、配列の代わりに値を 1 つだけ取得します。

list($market_name) = $wh_xml->xpath('//type/@name');
echo $market_name;

動作を確認してください: http://3v4l.org/rNdMo

于 2013-04-25T15:45:04.533 に答える