在 PHP 中显示特定的 XML 节点
Posted
技术标签:
【中文标题】在 PHP 中显示特定的 XML 节点【英文标题】:Displaying specific XML nodes in PHP 【发布时间】:2018-10-04 20:02:50 【问题描述】:我正在尝试使用 php 显示 .xml 文件中的特定节点,具体取决于变量
我想知道是否有其他方法可以使它工作或知道我的代码有什么问题。
我正在尝试仅显示 .xml 文件中的 <name>
。
这是我的代码不起作用:
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】:我认为问题出在这条线上。
$xmlstr = simplexml_load_file("$xmlstr") or die("Error: name not found");
您已将变量名称 $xmlstr
作为字符串提供给函数 simplexml_load_file ()
,而不是该变量中的内容(实际文件名)。
所以改变那行如下,
$xmlstr = simplexml_load_file($xmlstr) or die("Error: name not found");
【讨论】:
没有一行它只是说致命错误,还有另一个错误说“堆栈跟踪:在第 4 行的 /path/ 中抛出” 该错误可能是由于未安装 XML 模块。试试这个问题来安装 XML 模块。 ***.com/questions/31206186/…以上是关于在 PHP 中显示特定的 XML 节点的主要内容,如果未能解决你的问题,请参考以下文章
如何根据 XML 节点中的记录在 PHP 中编辑大型 XML 文件