-1

OK、単純な XML 関数を使用してリモート データベースから情報を取得しています。これは正常に機能しますが、すべての情報を xml 形式で返します。やりたいことは、1 つのフィールドの結果を表示することだけです。以下の例は、表示したい結果です

 <product id="9" name="Computer screwdriver" datasheet="" packshot=""/>

以下は私のコードです

$file = 'http://computers.mysite.co.uk/vrm.xml?apikey=**********&vid=Check&vrm='.$reg;
if(!$xml = simplexml_load_file($file))
 exit('Failed to open '.$file);
 print_r($id);

アップデート

わかりましたので、コードを次のように変更しました。

 $data  = simplexml_load_file("http://test.mysite.co.uk/test.xml?   apikey=********&vid=app&vrm='.$reg;");

 print $data->computers->computer->products->product->name;

xml 構造は次のとおりです。

<computers sid="1234">
  <computer id="253406" name="computer name)" model_group="Microsofth" start_year="2005" end_year="2009">
    <system id="969623" capacity="3.4"/>
      <developer id="64" name="intel"/>
      <machine id="8" name="P" etype="P"/>
    <products>
      <product id="9" name="computer screwdriver" datasheet="" packshot=""/>
      <product id="16" name="Screwdriver Crosshead" datasheet="" packshot=""/>
    </products>
  </computer>
 </computers

私がしたいのは、製品の最初の行のみで製品の名前を返すことです。この場合はid = 9です。

現時点では、コードが結果を表示していない方法ですが、すべての結果を表示するように変更すると、問題はその 1 つの結果を除外しようとしています。

どんな助けでも大歓迎です。

ありがとう

4

1 に答える 1

0

$data->xpath("you_selector") および header("Content-Type:text/xml"); を忘れないでください。

于 2012-10-30T17:40:53.253 に答える