![](http://www.atcpu.com/themes/extres/ithread/images/1.gif) | 最近用zendframework框架做项目,要把数据库中的数据拿出来生成XML文档。在此大概记录一下过程: xml文件: <?xml version="1.0" encoding="UTF-8"?> <data> <project id="1"><![CDATA[Docker JCP1]]></project> <project id="2"><![CDATA[Docker JCP2]]></project> <project id="3"><![CDATA[Docker JCP3]]></project> <project id="4"><![CDATA[Docker JCP4]]></project> <project id="5"><![CDATA[Docker JCP5]]></project> <project id="6"><![CDATA[Docker JCP6]]></project> </data> 1.建testController.php,添加function. public function projectAction(){ // XML-related routine //$list 指xml中的数据数组。 $dom = new DOMDocument('1.0', 'utf-8'); // create root element $root = $dom->createElement("data"); $dom->appendChild($root); //project name xml list foreach ($list as $project_item){ // create child element $projectname = $dom->createElement('project'); $root->appendChild($projectname); // create CDATA section $cdata = $dom->createCDATASection($project_item->name); $projectname->appendChild($cdata); $id = $dom->createAttribute("id"); $projectname->appendChild($id); // create attribute value node $idValue = $dom->createTextNode($project_item->project_id); $id->appendChild($idValue); } $output = $dom->saveXML(); // Setting up headers and body $this->_response->setHeader('Content-Type', 'text/xml; charset=utf-8') ->setBody($output); $this->_helper->layout->disableLayout(); } 这样就可以在页面上输出xml了。 如果要把xml保存,用$dom->save("filename.xml");
| |