【问题标题】:Selecting only the first item of an xpath result set in PHP在 PHP 中仅选择 xpath 结果集的第一项
【发布时间】:2010-05-06 03:01:06
【问题描述】:

我目前正在通过两个 PHP 语句实现预期的结果:

$thisBlarg = $xmlResource->xpath('//blarg[@ID='.$someBlargID.']');
echo $thisBlarg[0]->name;

但是,不想屈居第二,我真的希望这是一个声明,但 PHP 不喜欢这样:

echo $xmlResource->xpath('//blarg[@ID='.$someBlargID.']')[0]->name;

而且有充分的理由。但我找不到强制 xpath 查询直接返回结果的方法。有什么建议吗?

【问题讨论】:

  • nameblarg 的子元素还是特定于 PHP 的元素?
  • 对不起,应该更清楚。我的示例假设 $xmlResource 是这样实例化的: $xmlResource = simplexml_load_file('someXMLfile.xml');因此,“名称”属性对应于假定的 XML 文件的元素之一。

标签: php xpath simplexml


【解决方案1】:

试试这个

echo current(($xmlResource->xpath('//blarg[@ID='.$someBlargID.']')))->name;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-11
    • 1970-01-01
    • 2016-03-16
    • 2021-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-17
    相关资源
    最近更新 更多