PHP头条
热点:

php中SimpleXML生成与解析xml文件


在php中对xml文档操作我们有很多类可以使用,php SimpleXML就是一个很不错的xml解析器,下面我来给大家举两个应用实例.

例,生成xml文档,代码如下:

class SimpleXMLExtended extends SimpleXMLElement {  
    public function addCData($cdata_text) {  
    $node = dom_import_simplexml($this);  
    $no   = $node->ownerDocument;  
    $node->appendChild($no->createCDATASection($cdata_text));  
    }  
}  
function array2xml($array, $xml = false){  
    if($xml === false){  
        $xml = new SimpleXMLExtended('');  
    }  
    foreach($array as $key => $value){  
        if(is_array($value)){  
            array2xml($value, $xml->addChild($key));  
        }else{  
            //如果包含汉字,转编码  
            if (preg_match("/([x81-xfe][x40-xfe])/", $value, $match)) {  
                $value = iconv('gbk', 'utf-8', $value);  
            }  
            $xml->$key = NULL; // VERY IMPORTANT! We need a node where to append  
            $xml->$key->addCData($value);  
            //$xml->$key->addAttribute('lang', 'en');  
           // $xml->addChild($key, $value);  
        }  
    }
    return $xml->asXML();  
}

例,SimpleXMLElement解析xml,代码如下:

 
  
  HTTP 
  80 
  /index.html 
  5000 
  3000 
  2 
  3 
  
  
   
   
  
 
XML; 
 
$test = new SimpleXMLElement($content); 
 
//获得ping_protocol的值 
$ping_protocol = $test->global_setting->ping_protocol; 
echo "ping_protocol : $ping_protocol n"; 
//打印出所有instance的IP 
foreach ( $test->instances->instance as $instance) { 
    echo "IP: {$instance['ip']} n" ; 
}


本文地址:

转载随意,但请附上文章地址:-)

www.phpzy.comtrue/phpyy/48099.htmlTechArticlephp中SimpleXML生成与解析xml文件 在php中对xml文档操作我们有很多类可以使用,php SimpleXML就是一个很不错的xml解析器,下面我来给大家举两个应用实例. 例,生成xml文档,代码如下: class SimpleXM...

相关文章

PHP之友评论

今天推荐