在PHP中显示特定的XML节点
我正在尝试使用PHP显示.xml文件中的特定节点,具体取决于变量 我想知道是否有其他方法可以让它工作,或者知道我的代码有什么问题 我试图只显示.xml文件中的在PHP中显示特定的XML节点,php,xml,Php,Xml,我正在尝试使用PHP显示.xml文件中的特定节点,具体取决于变量 我想知道是否有其他方法可以让它工作,或者知道我的代码有什么问题 我试图只显示.xml文件中的 以下是我的代码,它不起作用: function display_xml_nodes($xmlstr, $node) { $xmlstr = simplexml_load_file("$xmlstr") or die("Error: name not found"); echo $xmlstr->foods->p
以下是我的代码,它不起作用:
function display_xml_nodes($xmlstr, $node) {
$xmlstr = simplexml_load_file("$xmlstr") or die("Error: name not found");
echo $xmlstr->foods->products->product->name . "\n";
}
display_xml_nodes("ex_04.xml", "name");
下面是.xml文件
<food>
<foods>
<title>Products</title>
<products>
<product>
<name>Chcolate Bar</name>
<price>1</price>
</product>
<product>
<name>Milk</name>
<price>0.50</price>
</product>
<product>
<name>Water</name>
<price>0.50</price>
</product>
<product>
<name>Donut</name>
<price>1.50</price>
</product>
</products>
</foods>
</food>
产品
巧克力棒
1.
牛奶
0.50
水
0.50
甜甜圈
1.50
我想问题出在这条线路上
$xmlstr = simplexml_load_file("$xmlstr") or die("Error: name not found");
您将变量名$xmlstr
作为函数simplexml\u load\u file()
的字符串,而不是该变量中的内容(实际文件名)
因此,将该行更改如下:
$xmlstr = simplexml_load_file($xmlstr) or die("Error: name not found");
没有一行它只是说致命错误,还有另一个错误说“Stack Trace:shown in/path/on line 4”。这个错误可能是由于没有安装XML模块造成的。请尝试此问题以安装XML模块。