很抱歉,如果这似乎是一个简单的问题,但我已经开始这方面的拔头发...
我有一个看起来像这样一个XML文件...
<VAR VarNum="90">
<option>1</option>
</VAR>
我试图让VARNUM。
到目前为止,我已经成功地使用如下代码来获取其他信息:
$xml=simplexml_load_file($file);
$option=$xml->option;
我只是无法得到VARNUM(属性值怎么想吗?)
谢谢!
很抱歉,如果这似乎是一个简单的问题,但我已经开始这方面的拔头发...
我有一个看起来像这样一个XML文件...
<VAR VarNum="90">
<option>1</option>
</VAR>
我试图让VARNUM。
到目前为止,我已经成功地使用如下代码来获取其他信息:
$xml=simplexml_load_file($file);
$option=$xml->option;
我只是无法得到VARNUM(属性值怎么想吗?)
谢谢!
你应该能够得到这个使用的SimpleXMLElement ::属性()
试试这个:
$xml=simplexml_load_file($file);
foreach($xml->Var[0]->attributes() as $a => $b) {
echo $a,'="',$b,"\"\n";
}
这会告诉你所有的第一名称/值属性foo
元素。 这是一个关联数组,这样你就可以做到这一点,以及:
$attr = $xml->Var[0]->attributes();
echo $attr['VarNum'];
怎么样使用$xml['VarNum']
像这样 :
$str = <<<XML
<VAR VarNum="90">
<option>1</option>
</VAR>
XML;
$xml=simplexml_load_string($str);
$option=$xml->option;
var_dump((string)$xml['VarNum']);
(我用simplexml_load_string
因为我已经粘贴您的XML转换为字符串,而不是创建一个文件,你用做什么simplexml_load_file
是好的,你的情况!)
将让你
string '90' (length=2)
用SimpleXML,访问属性与数组语法。
而且你必须转换为字符串来获取价值,而不是和实例SimpleXMLElement
举例来说,看到的例子#5 基本用法手动:-)
[0] => Array
(
[@attributes] => Array
(
[uri] => https://abcd.com:1234/abc/cst/2/
[id] => 2
)
[name] => Array
(
[first] => abcd
[last] => efg
)
[company] => abc SOLUTION
[email] => abc@xyz.com
[homepage] => WWW.abcxyz.COM
[phone_numbers] => Array
(
[phone_number] => Array
(
[0] => Array
(
[main] => true
[type] => work
[list_order] => 1
[number] => +919876543210
)
[1] => Array
(
[main] => false
[type] => mobile
[list_order] => 2
[number] => +919876543210
)
)
)
[photo] => Array
(
[@attributes] => Array
(
[uri] => https://abcd.com:1234/abc/cst/2/cust_photo/
)
)
)
我施加下面的代码
$xml = simplexml_load_string($response);
$json = json_encode($xml);
$array = json_decode($json,TRUE);
print_r($array);
但它没有充分使用我想在PHP中单个阵列中的所有数据