$doc=new DOMDocument("1.0","utf-8"); #声明文档类型
$doc->formatOutput=true; #设置可以输出操作
#声明根节点,最好一个XML文件有个跟节点
$root=$doc->createElement("root"); #创建节点对象实体
$root=$doc->appendChild($root); #把节点添加进来
# for($i=1;$i<100;$i++){ //循环生成节点,如果数据库调用出来就改这里
$info=$doc->createElement("info"); #创建节点对象实体
$info=$root->appendChild($info); #把节点添加到root节点的子节点
$name_value=$doc->createAttribute("value"); #创建节点属性对象实体
$name_value=$info->appendChild($name_value); #把属性添加到节点info中
$name=$doc->createElement("name"); #创建节点对象实体
$name=$info->appendChild($name);
$sex=$doc->createElement("sex");
$sex=$info->appendChild($sex);
$name->appendChild($doc->createTextNode("MUSIC")); #createTextNode创建内容的子节点,然后把内容添加到节点中来
$name_value->appendChild($doc->createTextNode("张三"));
$sex->appendChild($doc->createTextNode("男")); #注意要转码对于中文,因为XML默认为UTF-8格式 # } $name->appendChild($doc->createTextNode("MUSIC")); #createTextNode创建内容的子节点,然后把内容添加到节点中来
$name_value->appendChild($doc->createTextNode("李四"));
$sex->appendChild($doc->createTextNode("男")); #注意要转码对于中文,因为XML默认为UTF-8格式 # }
$name->appendChild($doc->createTextNode("MUSIC")); #createTextNode创建内容的子节点,然后把内容添加到节点中来
$name_value->appendChild($doc->createTextNode("刘兰"));
$sex->appendChild($doc->createTextNode("女")); #注意要转码对于中文,因为XML默认为UTF-8格式 # }
$doc->save("xml.xml"); #保存路径
echo "生成成功。<br>";
如果生成的XML.XML 文档内容如下:<?xml version="1.0" encoding="utf-8"?>
<root>
<info value="张三李四刘兰">
<name>MUSICMUSICMUSIC</name>
<sex>男男女</sex>
</info>
</root>
我想要的结果:<?xml version="1.0" encoding="utf-8"?>
<root>
<info value="MUSIC">
<name>张三</name>
<sex>男</sex>
</info>
<info value="MUSIC">
<name>李四</name>
<sex>男</sex>
</info>
<info value="MUSIC">
<name>刘兰</name>
<sex>女</sex>
</info>
</root>
$doc->formatOutput=true; #设置可以输出操作
#声明根节点,最好一个XML文件有个跟节点
$root=$doc->createElement("root"); #创建节点对象实体
$root=$doc->appendChild($root); #把节点添加进来
# for($i=1;$i<100;$i++){ //循环生成节点,如果数据库调用出来就改这里
$info=$doc->createElement("info"); #创建节点对象实体
$info=$root->appendChild($info); #把节点添加到root节点的子节点
$name_value=$doc->createAttribute("value"); #创建节点属性对象实体
$name_value=$info->appendChild($name_value); #把属性添加到节点info中
$name=$doc->createElement("name"); #创建节点对象实体
$name=$info->appendChild($name);
$sex=$doc->createElement("sex");
$sex=$info->appendChild($sex);
$name->appendChild($doc->createTextNode("MUSIC")); #createTextNode创建内容的子节点,然后把内容添加到节点中来
$name_value->appendChild($doc->createTextNode("张三"));
$sex->appendChild($doc->createTextNode("男")); #注意要转码对于中文,因为XML默认为UTF-8格式 # } $name->appendChild($doc->createTextNode("MUSIC")); #createTextNode创建内容的子节点,然后把内容添加到节点中来
$name_value->appendChild($doc->createTextNode("李四"));
$sex->appendChild($doc->createTextNode("男")); #注意要转码对于中文,因为XML默认为UTF-8格式 # }
$name->appendChild($doc->createTextNode("MUSIC")); #createTextNode创建内容的子节点,然后把内容添加到节点中来
$name_value->appendChild($doc->createTextNode("刘兰"));
$sex->appendChild($doc->createTextNode("女")); #注意要转码对于中文,因为XML默认为UTF-8格式 # }
$doc->save("xml.xml"); #保存路径
echo "生成成功。<br>";
如果生成的XML.XML 文档内容如下:<?xml version="1.0" encoding="utf-8"?>
<root>
<info value="张三李四刘兰">
<name>MUSICMUSICMUSIC</name>
<sex>男男女</sex>
</info>
</root>
我想要的结果:<?xml version="1.0" encoding="utf-8"?>
<root>
<info value="MUSIC">
<name>张三</name>
<sex>男</sex>
</info>
<info value="MUSIC">
<name>李四</name>
<sex>男</sex>
</info>
<info value="MUSIC">
<name>刘兰</name>
<sex>女</sex>
</info>
</root>
$xml_array = array(
0=>array('name'=>'张三','sex'=>'男'),
1=>array('name'=>'李四','sex'=>'男'),
2=>array('name'=>'刘兰','sex'=>'女'),
);$doc=new DOMDocument("1.0","utf-8"); #声明文档类型
$doc->formatOutput=true; #设置可以输出操作
#声明根节点,最好一个XML文件有个跟节点
$root=$doc->createElement("root"); #创建节点对象实体
$root=$doc->appendChild($root); #把节点添加进来
foreach ($xml_array as $val){
$info=$doc->createElement("info"); #创建节点对象实体
$info=$root->appendChild($info); #把节点添加到root节点的子节点
$name_value=$doc->createAttribute("value"); #创建节点属性对象实体
$name_value=$info->appendChild($name_value); #把属性添加到节点info中
$name=$doc->createElement("name"); #创建节点对象实体
$name=$info->appendChild($name);
$sex=$doc->createElement("sex");
$sex=$info->appendChild($sex);
$name_value->appendChild($doc->createTextNode("MUSIC"));
$name->appendChild($doc->createTextNode($val['name'])); #createTextNode创建内容的子节点,然后把内容添加到节点中来
$sex->appendChild($doc->createTextNode($val['sex'])); #注意要转码对于中文,因为XML默认为UTF-8格式 # }
}
$doc->save("xml.xml"); #保存路径
echo "生成成功。<br>";
?>