PHP DOMDocument实现XML读写操作
发布:smiling 来源: PHP粉丝网 添加日期:2014-08-20 13:31:51 浏览: 评论:0
在php中操作xml文档我们可以直接调用DOMDocument类或使用simplexml_load_string类来操作,这些都不需要加载算是内置函数了,我们直接使用.
PHP脚本读取XML最原始,最笨的方法,代码如下:
- $doc = new DOMDocument();
- $doc->load('test.xml');
- $rows = $doc->getElementsByTagName("ds");
- $d = array();
- $i = 0;
- foreach($rows as $row)
- {
- $web = $row->getElementsByTagName('web');
- $webUrl = $row->getElementsByTagName('webUrl');
- $d[$i]['web'] = $web->item(0)->nodeValue;
- $d[$i]['webUrl'] = $webUrl->item(0)->nodeValue;
- $i++;
- }
- //开源代码phpfensi.com
- print_R($d);
简单,容易,速度快,代码如下:
- $xmlData = file_get_contents('test.xml');
- $xml = simplexml_load_string($xmlData);
- $xmlArr = objectToArray($xml);
objectToArray函数代码如下:
- function objectToArray($object)
- {
- if(!$object) return '';
- $result = array();
- $object = is_object($object) ? get_object_vars($object) : $object;
- foreach ($object as $key => $val) {
- $val = (is_object($val) || is_array($val)) ? objectToArray($val) : $val;
- $result[$key] = $val;
- }
- return $result;
- }
上面讲到了读取xml,下面再介绍写xml实例,代码如下:
- $arr = array(
- array('id'=>1,'web'=>'好脚本','webUrl'=>'http://www.phpfensi.com'),
- array('id'=>2,'web'=>'PHP脚本','webUrl'=>'http://www.phpfensi.com/'),
- array('id'=>3,'web'=>'JavaScript脚本','webUrl'=>'http://www.phpfensi.com/'),
- array('id'=>4,'web'=>'js脚本','webUrl'=>'http://www.phpfensi.com/'),
- array('id'=>5,'web'=>'PHP脚本示例','webUrl'=>'http://www.phpfensi.com/'),
- array('id'=>5,'web'=>'JavaScript脚本示例','webUrl'=>'http://www.phpfensi.com/')
- );
- /*使用dom生成xml,注意生成的xml中会没有空格。*/
- $dom=new DOMDocument('1.0','utf-8');
- $path= "logs/test.xml";
- $data=$dom->createElement('data');
- $dom->appendChild($data);
- foreach($arr as $v)
- {
- $ds = $dom->createElement('ds');
- $id = $dom->createAttribute('id');
- $id->nodeValue = $v['id'];
- $ds->setAttributeNode($id);
- $data->appendChild($ds);
- foreach($v as $kk=>$vv)
- {
- ${$kk} = $dom->createElement($kk);
- $value= $dom->createTextNode($vv);
- ${$kk}->appendChild($value);
- $ds->appendChild(${$kk});
- }
- }
- $dom->saveXML();
- $dom->save($path);
Tags: DOMDocument XML读写操作
相关文章
- ·PHP中DOMDocument生成与解析XML格式数据(2014-08-20)
- ·php DOMDocument removeChild 删除节点函数(2014-08-20)
- ·PHP DOMDocument保存xml时中文出现乱码(2015-04-08)
- ·PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】(2021-12-16)
- ·PHP读取XML文件的方法实例总结【DOMDocument及simplexml方法】(2021-12-16)
- ·php xml读写操作实现代码(2014-08-20)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)