有以下两个相同结构的XML,我现在需要将第1个XML下面的xueshengmen节点下面的所有数据添加到第2个XML下面的xueshengmen节点中。你懂的~<?xml version="1.0" encoding="utf-8" ?>
<AllData>
<xueshengmen>
<xuesheng>
<name>张三</name>
<yuwen>80</yuwen>
<shuxue>90</shuxue>
<yingyu>70</yingyu>
</xuesheng>
<xuesheng>
<name>李四</name>
<yuwen>60</yuwen>
<shuxue>90</shuxue>
<yingyu>75</yingyu>
</xuesheng>
</xueshengmen>
</AllData>
<AllData>
<xueshengmen>
<xuesheng>
<name>张三</name>
<yuwen>80</yuwen>
<shuxue>90</shuxue>
<yingyu>70</yingyu>
</xuesheng>
<xuesheng>
<name>李四</name>
<yuwen>60</yuwen>
<shuxue>90</shuxue>
<yingyu>75</yingyu>
</xuesheng>
</xueshengmen>
</AllData>
是否一定有该元素,xuesheng是否是xueshengmen的唯一元素,
是否有数量上限,是否需要排序,是否不能重复,如何判断重复(同一个name的是否看做重复的)........
<?xml version="1.0" encoding="utf-8" ?>
<AllData>
<xueshengmen>
<xuesheng>
<name>张三</name>
<yuwen>80</yuwen>
<shuxue>90</shuxue>
<yingyu>70</yingyu>
</xuesheng>
<xuesheng>
<name>李四</name>
<yuwen>60</yuwen>
<shuxue>90</shuxue>
<yingyu>75</yingyu>
</xuesheng>
</xueshengmen>
</AllData>XML;$xml2 = <<<XML
<?xml version="1.0" encoding="utf-8" ?>
<AllData>
<xueshengmen>
<xuesheng>
<name>王五</name>
<yuwen>40</yuwen>
<shuxue>90</shuxue>
<yingyu>70</yingyu>
</xuesheng>
<xuesheng>
<name>赵六</name>
<yuwen>60</yuwen>
<shuxue>80</shuxue>
<yingyu>75</yingyu>
</xuesheng>
</xueshengmen>
</AllData>XML;$dom1 = new DOMDocument('1.0', 'utf-8');
$dom1->loadXML($xml1);$dom2 = new DOMDocument('1.0', 'utf-8');
$dom2->loadXML($xml2);$xueshengmen1 = $dom1->getElementsByTagName('xueshengmen')->item(0);
$xueshengmen2 = $dom2->getElementsByTagName('xueshengmen')->item(0);//循环添加
foreach($xueshengmen1->childNodes as $node) {
$node = $dom2->importNode($node, true);
$xueshengmen2->appendChild($node);
}var_dump($dom2->saveXML());
<xuesheng>
<name>张三</name>
<yuwen>80</yuwen>
<shuxue>90</shuxue>
<yingyu>70</yingyu>
</xuesheng>
然后再用字符串操作组合2个XML数据部分,再用FSO文件操作函数组合成一个XML。思路大概就是这样:!