祝你有个美好的一天。使用crxml存储库时,未正确生成xml文档。这就是在文档中添加新元素时会发生的情况。行动方针: 首先,我创建文档
$this->genXml->Item['Type'] = 'view';
$this->genXml->Item->{'http://'.$this->siteUrll.'|Name'} = 'Last View';
$this->genXml->Item->LastView->View->Time = $app['Time'];
$this->genXml->Item->LastView->View->Action = $app['Action'];
$this->genXml->Item->LastView->View->IP = $app['IP'];
return $this->genXml->xml();
我得到了这种xml文件
<?xml version="1.0" encoding="UTF-8"?>
<Item Type="view">
<Name xmlns="http://sitename.com">Last View</Name>
<LastView>
<View>
<Time>11:45:12</Time>
<Action>Click</Action>
<IP>192.168.1.1</IP>
</View>
</LastView>
</Item>
进一步完成结果添加新值
$GetFile = <<<EOB
<?xml version="1.0" encoding="UTF-8"?>
<Item Type="view">
<Name xmlns="http://sitename.com">Last View</Name>
<LastView>
<View>
<Time>11:45:12</Time>
<Action>Click</Action>
<IP>192.168.1.1</IP>
</View>
</LastView>
</Item>
EOB;
$this->genXml->loadXML($GetFile);
$this->genXml->Item->LastView->View[2]->Time = $app['Time'];
$this->genXml->Item->LastView->View[2]->Action = $app['Action'];
$this->genXml->Item->LastView->View[2]->IP = $app['IP'];
echo($this->genXml->xml());
并获取有问题的代码xml
<?xml version="1.0" encoding="UTF-8"?>
<Item Type="view">
<Name xmlns="http://sitename.com">Last View</Name>
<LastView>
<View>
<Time>11:45:12</Time>
<Action>Click</Action>
<IP>192.168.1.1</IP>
</View>
<View/><View><Time>11:45:12</Time><Action>Click</Action> <IP>192.168.1.1</IP></View></LastView>
</Item>
即标签
的位置<View/>
帮助解决输出问题。也许我做错了什么? (对不起我的英语,我知道我不如我想的那么好) 只需提供问题的repository和description链接即可。
答案 0 :(得分:1)
它有点滑稽,因为它是信息学的典型问题。我们喜欢从0开始计数。您创建了第一个ID为0(隐式)的视图。如果您现在添加ID为2的新视图,则会错过ID 1并只插入一个空视图。结果从语法上讲是正确的。
您只需将添加的视图的索引更改为1即可防止这种情况发生。