如何使用PHP获取XML属性
这是我的xml文件:如何使用PHP获取XML属性,php,xml,Php,Xml,这是我的xml文件: <device name=" name "> <interface> <ip > someip </ip> </interface> <display> <name> \\.\DISPLAY1 ( 1920 X 1080 )</name> </display> <output> <audio> Speakers (Hig
<device name=" name ">
<interface>
<ip > someip </ip>
</interface>
<display>
<name> \\.\DISPLAY1 ( 1920 X 1080 )</name>
</display>
<output>
<audio> Speakers (High Definition Audio </audio>
<audio> Digital Audio (S/PDIF) (High De </audio>
<audio> Digital Audio (S/PDIF) (High De </audio>
</output>
萨米普
\\.\DISPLAY1(1920 X 1080)
扬声器(高清音频)
数字音频(S/PDIF)(高De
数字音频(S/PDIF)(高De
这是我的PHP代码:
<body style="font-family: Arial">
<?php
$xml=simplexml_load_file("device.xml");
var_dump($xml);
$attr = $xml->device->attributes()->name;
?>
<div id="leftDiv">
<ul id="menu">
<li><?php echo $attr; ?></li>
</ul>
</div>
<div id="mainDiv">
</div>
<div id="rightDiv">
</div>
设备->属性()->名称;
?>
我想访问设备的name属性并获取其值,但我总是得到一个错误:main():第30行的C:\xampp\htdocs\Project\index.php中不再存在节点。第30行是这一行:$attr=$xml->device->attributes()->name;怎么了?php文件代码 从
$xml->device->attributes()->name;
<body style="font-family: Arial">
<?php
$xml=simplexml_load_file("device.xml");
var_dump($xml);
$attr = $xml->attributes()->name;
?>
<div id="leftDiv">
<ul id="menu">
<li><?php echo $attr; ?></li>
</ul>
</div>
<div id="mainDiv">
</div>
<div id="rightDiv">
</div>
属性()->名称;
?>
xml文件
文件末尾缺少
,请将其放入
<device name=" name ">
<interface>
<ip > someip </ip>
</interface>
<display>
<name> \\.\DISPLAY1 ( 1920 X 1080 )</name>
</display>
<output>
<audio> Speakers (High Definition Audio </audio>
<audio> Digital Audio (S/PDIF) (High De </audio>
<audio> Digital Audio (S/PDIF) (High De </audio>
</output>
</device>
萨米普
\\.\DISPLAY1(1920 X 1080)
扬声器(高清音频)
数字音频(S/PDIF)(高De
数字音频(S/PDIF)(高De
您发布的XML无效(它没有根元素)。能否构造一个可以实际测试并给出相同错误的XML?如果错误确实在$attr=$XML->device->attributes()行上->name;
我们应该只需要看到这三行PHP代码。这是一个根元素本身,只是这段代码中缺少了结束标记。好吧,这是一个很容易犯的错误。不过,这里的PHP代码仍然比我们需要的要多;只要以$xml=…
和$attr=…
开头的两行代码就可以成为您的提示: $xml->attributes()->name
可以更简洁地写成$xml['name'];