最近遇到要生成xml文件的需求,给大家分享一下PHP Document 扩展操作XML几种方式:
1. 生成xml文件在本地
<?php
$dom = new DOMDocument('1.0', 'utf-8');
$dom->formatOutput = true;//格式化输出格式
$programlanguages = $dom->createElement('programlanguages');//创建标签
$element = $dom->createElement('programlanguage', 'PHP'); //创建标签,同时给内容
$elementTitle = $dom->createAttribute('title');//设置标签属性
$elementTitleText = $dom->createTextNode("PHP是世界上最好的语言");//设置属性内容
$elementTwo = $dom->createElement('programlanguage', 'Java');
$elementTitle->appendChild($elementTitleText);
$element->appendChild($elementTitle);
$programlanguages->appendChild($element);
$programlanguages->appendChild($elementTwo);
$dom->appendChild($programlanguages);
$dom->save("php.xml");
2.在浏览器预览xml
<?php
header('Content-Type: text/xml;');
$dom = new DOMDocument('1.0', 'utf-8');
$dom->formatOutput = true;//格式化输出格式
$programlanguages = $dom->createElement('programlanguages');//创建标签
$element = $dom->createElement('programlanguage', 'PHP'); //创建标签,同时给内容
$elementTitle = $dom->createAttribute('title');//设置标签属性
$elementTitleText = $dom->createTextNode("PHP是世界上最好的语言");//设置属性内容
$elementTwo = $dom->createElement('programlanguage', 'Java');
$elementTitle->appendChild($elementTitleText);
$element->appendChild($elementTitle);
$programlanguages->appendChild($element);
$programlanguages->appendChild($elementTwo);
$dom->appendChild($programlanguages);
$xmlString = $dom->saveXML();
//输出XML字符串
echo $xmlString;exit;
3. 从浏览器下载xml
<?php
$dom = new DOMDocument('1.0', 'utf-8');
$dom->formatOutput = true;//格式化输出格式
$programlanguages = $dom->createElement('programlanguages');//创建标签
$element = $dom->createElement('programlanguage', 'PHP'); //创建标签,同时给内容
$elementTitle = $dom->createAttribute('title');//设置标签属性
$elementTitleText = $dom->createTextNode("PHP是世界上最好的语言");//设置属性内容
$elementTwo = $dom->createElement('programlanguage', 'Java');
$elementTitle->appendChild($elementTitleText);
$element->appendChild($elementTitle);
$programlanguages->appendChild($element);
$programlanguages->appendChild($elementTwo);
$dom->appendChild($programlanguages);
$dom->save("php.xml");
header('Content-type: application/xml');
header('Content-Disposition: attachment; filename="downloaded.xml"');
readfile('php.xml');
PHP处理XML的方式不止这一种,当然同学可以使用 SimpleXML 或者其它方式,只要能够满足自己的需求都可以