如果节点存在简单XML,如何删除该节点
这样我就知道了我要尝试删除的节点的确切路径。我正在迭代几个XML文件以更新一些内容。为了在中添加一些新内容,我必须首先删除已存在的内容。
以下是我尝试使用的代码,但收到分析错误:语法错误,意外的T_UNSET
public function hint_insert() {
foreach($this->hints as $key => $value) {
$filename = $this->get_qid_filename($key);
echo "$key - $filename - $value[0]<br>";
//insert hint within right node using simplexml
$xml = simplexml_load_file($filename);
foreach ($xml->PrintQuestion as $PrintQuestion) {
if (unset($xml->PrintQuestion->content->multichoice->feedback->hint->Passage)) {
$xml->PrintQuestion->content->multichoice->feedback->hint->addChild('Passage', $value[0]);
} else {
$xml->PrintQuestion->content->multichoice->feedback->hint->addChild('Passage', $value[0]);
}
}
}
解决方案
unset
是语言构造,不能在if
语句中使用。如果您在if
语句之外使用它/不期望它返回任何东西,则应该没有问题。
相关文章