【发布时间】:2022-01-18 13:56:16
【问题描述】:
一切正常,有点!
我可以添加一个子节点并保存 XML 好。 然后我可以在上面添加一个子节点并再次保存它。
我的问题是,当我添加一个子节点,然后尝试将一个子节点添加到第一个子节点时,我收到 500 错误!
我确定我错过了什么,但看不到哪里。
$customerPath = $xml->xpath('//customers//customer[@name="'.$customerName.'"]');
if ( !$customerPath ) {
$customerAdd = $xml->customers->addChild('customer');
$customerAdd->addAttribute('name', $customerName);
}
// CHECK IF HOST EXISTS
$hostPath = $xml->xpath('//customers//customer[@name="'.$customerName.'"]//host[@name="'.$hostName.'"]');
if ( !$hostPath ) {
$hostAdd = $customerPath->addChild('host');
$hostAdd->addAttribute('name', $hostName);
}
【问题讨论】:
-
你得到的具体错误是什么,500 只是表示服务器遇到了错误,但没有告诉我们错误是什么。仅查看您的代码,我就能想到的一件事是,如果
$customerPath最初不存在,则您实际上从未设置它,这意味着您的第二个if语句将失败 b/c$customerPath将是 @987654325 @. -
谢谢,响应调用 an,当我尝试将数组变量添加到主 XML 时,这搞砸了