0

我见过几个类似的问题,但没有找到我正在寻找的确切答案。可能是我正在寻找的功能不存在。

如果我做一个 xpath 查询,结果是一个对象数组,但每个对象只包含一个值,一个字符串,我想快速将它转换成一个字符串数组。显然我可以在对象上做一个 foreach 并将字符串值推送到一个新数组上,但是如果有一个我没有想到的内置函数,请告诉我。

例子:

array(3) {
  [0]=>
  object(SimpleXMLElement)#24 (1) {
    [0]=>
    string(20) "Network Media Player"
  }
  [1]=>
  object(SimpleXMLElement)#25 (1) {
    [0]=>
    string(12) "Music Player"
  }
  [2]=>
  object(SimpleXMLElement)#26 (1) {
    [0]=>
    string(8) "Juke Box"
  }
}

我希望它变成

array('Network Media Player','Music Player','Juke Box')
4

1 回答 1

1

这是我的测试:

<pre><?php 

$xml = "<data>
            <item>
                <value>Network Media Player</value>
            </item>
            <item>
                <value>Music Player</value>
            </item>
            <item>
                <value>Jukebox Player</value>
            </item>
        </data>";
$sx = simplexml_load_string($xml);
print_r($sx);

print_r(explode("|",implode("|",$sx->xpath("//data/item/value"))));

?></pre>

结果如下:http ://codepad.org/ZkaWpzMc

于 2012-04-24T17:57:01.723 回答