【问题标题】:Getting single result from Simple XML Array从简单 XML 数组中获取单个结果
【发布时间】:2012-10-30 15:21:10
【问题描述】:

好的,我正在使用一个简单的 XML 函数从远程数据库获取一些信息,这工作正常,但是它以 xml 格式返回所有信息,我想要做的只是显示一个字段的结果,所以例如下面是我要显示的结果

 <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。

目前代码没有显示任何结果的方式,但如果我将其更改为显示所有结果,那么问题只是试图过滤掉一个结果。

任何帮助将不胜感激。

谢谢

【问题讨论】:

  • “例如下面是我想要显示的结果”结果在哪里?
  • 我认为重点是加载所有根,然后从中获取首选节点。我从未听说过通过 SimpleXML 获取单个节点。

标签: php xml


【解决方案1】:

$data->xpath("you_selector") 不要忘记 header("Content-Type:text/xml");

【讨论】:

  • 对不起,Xpath("you_Selector) 是什么意思我是个新手,只是在尝试学习。
猜你喜欢
  • 2017-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-08
  • 2023-04-05
  • 1970-01-01
  • 1970-01-01
  • 2011-07-18
相关资源
最近更新 更多