PHP头条
热点:

使用DOM复制(克隆)指定节点名数据到新的XML文件中-PHP源码


[代码][PHP]代码



    
        
        content1
        2009-10-11
    
    
        title2
        content2
        2009-11-11
    
*/ /* 使用DOM复制(克隆)指定节点名数据到新的XML文件中 ,用到三个类的相关知识点 : DOMDocument - DOMNodeList - DOMNode 1.DOMNodeList DOMDocument::getElementsByTagName ( string $name ) 2.DOMNode DOMNodelist::item ( int $index ) 3.DOMNode DOMNode::cloneNode ([ bool $deep ] ) */ if(!function_exists('l')) { function l() { echo '
********************************
'; } } if(!function_exists('cp_xml')) { /* * 复制指定节点元素信息到新XML文件中 * @param $dom : 源XML文件的DOM对象 * @param $newdom : 新XML文件的DOM对象 * @param $node: 指定复制的节点元素名 * @param $file: 新生成的XML文件名 * @param $attribute: 指定复制的节点元素的属性名 * @return void */ function cp_xml($dom,$newdom,$node,$file,$attribute = '') { $contents = $dom->getElementsByTagName($node); $clone = array(); $attr = array(); for($i = 0 ; $i<$contents->length; $i++) { $node = $contents->item($i); if($node->hasAttributes() && !empty($attribute)) { $attr[] = $node->getAttribute($attribute); } $clone[] = $node->cloneNode(true); } var_dump($attr); //debug $root = $newdom->createElement('root'); $newdom->appendChild($root); for($i = 0 ; $icreateElement($clone[$i]->nodeName,$clone[$i]->nodeValue); $root->appendChild($title); if(count($attr)>0 && !empty($attribute)) { //创建属性名 $aname = $newdom->createAttribute($attribute); $title->appendChild($aname); //传递属性值 $aval = $newdom->createTextNode($attr[$i]); $aname->appendChild($aval); } } $newdom->save($file); } } if(file_exists("test10_12.xml")) { //实例一 $dom = new DOMDocument(); $newdom = new DOMDocument('1.0','utf-8'); $dom->load("test10_12.xml"); $node = 'content'; $file = '11_1.xml'; cp_xml($dom,$newdom,$node,$file); //实例二 $dom = new DOMDocument(); $newdom = new DOMDocument('1.0','utf-8'); $dom->load("test10_12.xml"); $node = 'title'; $file = '11_2.xml'; cp_xml($dom,$newdom,$node,$file,$attribute = 'name'); } /*End of PHP*/

www.phpzy.comtrue/phpyy/42854.htmlTechArticle使用DOM复制(克隆)指定节点名数据到新的XML文件中-PHP源码 [代码][PHP]代码 content1 2009-10-11 title2 content2 2009-11-11 *//*使用DOM复制(克隆)指定节点名数据到新的XML文件中 ,用到三个类的相...

相关文章

PHP之友评论

今天推荐