php解析xml字符串

<?php  
$content = <<<XML
<?xml version="1.0" encoding="UTF-8"?>  
<test>  
    <global_setting>  
        <ping_protocol>HTTP</ping_protocol>  
        <ping_port>80</ping_port>  
        <ping_path>/index.html</ping_path>  
        <response_timeout>5000</response_timeout>  
        <health_check_interval>3000</health_check_interval>  
        <unhealthy_threshold>2</unhealthy_threshold>  
        <healthy_threshold>3</healthy_threshold>  
    </global_setting>  
    <instances>  
        <instance ip="192.168.234.121"/>  
        <instance ip="192.168.234.28"/>  
    </instances>  
</test>  
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" ;  
}  

//经过我的测试,发现试用var_dump之类的似乎不能有效输出值,用echo比较顺利,还有就是上面的那个xml的例子可以去掉
<?xml version="1.0" encoding="UTF-8"?> 也可以去掉头尾///的<<<xml,然后当做普通字符串那样对待,但是没有测试中文等

 

posted @ 2015-04-16 10:42  西瓜霜  阅读(4569)  评论(0编辑  收藏  举报