【问题标题】:PHP/XPath/SimpleXML: Select all attributes at oncePHP/XPath/SimpleXML:一次选择所有属性
【发布时间】:2012-03-15 02:28:46
【问题描述】:

我有以下 XML

$data = "<data>
  <element name='A'>value1</element>
  <element name='B'>value2</element>
  <element name='C'>value3</element>
  <element name='D'>value4</element>
  <element name='E'>value5</element>
</data>";

它在 PHP 中作为 SimpleXML 对象加载。

使用以下代码行,我可以将所有值作为数组获取

$values = array_map( create_function( '$value', 'return (string) $value;' ), $data->xpath("data/element") );

print_r($values)给了

Array (
  [0] => value1
  [1] => value2
  [2] => value3
  [3] => value4
  [4] => value5
)

是否可以对不同的 xpath 查询使用相同的方法来返回所有名称属性的值,而无需遍历使用 $data-&gt;xpath("data/element") 创建的数组?

【问题讨论】:

    标签: php xml xpath simplexml


    【解决方案1】:

    使用这个 XPath 表达式:

    data/element/@name
    

    【讨论】:

      猜你喜欢
      • 2017-08-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-30
      • 2015-07-06
      • 2012-01-19
      相关资源
      最近更新 更多