Php 如何获取[b7]中的内容?请帮我弄清楚
有人能帮我从这个XML路径获取正确的数据吗? 以下数组是名为FIRST的xml路径。如何获取[b7]中的内容Php 如何获取[b7]中的内容?请帮我弄清楚,php,xpath,simplexml,Php,Xpath,Simplexml,有人能帮我从这个XML路径获取正确的数据吗? 以下数组是名为FIRST的xml路径。如何获取[b7]中的内容 Array([0] => SimpleXMLElement Object ( [@attributes] => Array ( [a1] => ENG [a2] => 7F5 [a3] => 0 [a4]
Array([0] => SimpleXMLElement Object
( [@attributes] => Array
(
[a1] => ENG
[a2] => 7F5
[a3] => 0
[a4] => 0
)
[LINK] => SimpleXMLElement Object
(
[@attributes] => Array
(
[b1] => bla
[b2] => bla - bla
[b3] => 0
[b4] => 0
[b5] => bla
[b6] => bla-bla
[b7] => 232323
[b8] => 1
[b9] => bla-bla-bla
)
)
)
)
我尝试使用$something=$value->xpath('FIRST')
它是有效的,但是当我尝试$bla=“{$something['0']['b7']}”
时,我什么也没有得到
有任何帮助吗???请参见以下示例():
将您的问题表示为针对XML的XPath,而不是PHP/SimpleXML的内部表示形式,可能会得到更多的答案。以不同的方式添加@kjhughes注释:向我们展示实际XML的样子,而不是使用SimpleXML加载后的
print\r
结果。print\r
视图可能会产生误导。如果我发布xml,我真的认为这里没有足够的空间来容纳它。“这真的很长。@IreM调试通常涉及创建问题的最小版本;一种方法是使用一个包含相关部分的小XML文件。在此打印中显示一小段;您可以只粘贴XML的这一部分。综上所述,我认为非XPath SimpleXML方法应该是$something[0]->LINK['b7']]
-您的尝试根本没有提到LINK
元素。这非常有效,谢谢!!!
<?php
/**
* How can I get what is in [b7]? Please help me get right Xpath
*
* @link http://stackoverflow.com/a/19502280/367456
*/
$xml = simplexml_load_string('<CONTENT><LINK b7="hey"/></CONTENT>');
var_dump($xml);
$b7 = (string)$xml->xpath('LINK/@b7')[0];
var_dump($b7);
object(SimpleXMLElement)#1 (1) {
["LINK"]=>
object(SimpleXMLElement)#2 (1) {
["@attributes"]=>
array(1) {
["b7"]=>
string(3) "hey"
}
}
}
string(3) "hey"