浪费了6个多小时后,我在这里发布了我的问题。
我试图获取simplexmlelement属性值:
这是我的var_dump值:
object(SimpleXMLElement)#5 (1) {
["@attributes"]=>
array(3) {
["type"]=>
string(4) "Rich"
["template"]=>
string(44) "EntityContainer.HeroGeneric_8_1_RTM-7814aaaa"
["disambiguationId"]=>
string(36) "85fa63d3-9596-adb9-b4eb-502273d84f56"
}
}
我希望得到["输入"]价值" Rich"。但是我无法做到这一点。我在发布之前已经看过很多答案和代码示例,但是他们没有帮助。 实际上我第一次尝试使用simplexmlelement [高级代码]
我的PHP代码
$xml = simplexml_load_file($url);
$xml2 = $xml->channel->item;
foreach ($xml2 as $out_ns)
{
$ns = $out_ns->getNamespaces(true);
$child = $out_ns->children($ns['win']);
var_dump($child); // Value is written above simple xml object
print_r((string) $child->attributes());
}
我想知道我做错了什么。我想实现type和disambiguationId属性值。
错误:
警告:SimpleXMLElement :: __ toString(): E:\ xampp \ htdocs \ ring \ dom.php 中的节点 15 < / b>
请检查我的代码帮助我。
答案 0 :(得分:1)
您必须检查元素是否存在:
if($child && $child->attributes()) {
print_r($child->attributes());
}