当前位置:首页 > PHP教程 > php高级应用 > 列表

php遍历解析xml字符串的方法

发布:smiling 来源: PHP粉丝网  添加日期:2019-07-30 11:06:34 浏览: 评论:0 

本文实例讲述了php遍历解析xml字符串的方法。分享给大家供大家参考,具体如下:

  1. <?php 
  2.  
  3. $content = <<<xml <?xmlxml="" version="1.0" encoding="UTF-8" ?=""> 
  4.  
  5. <test> 
  6.  
  7.   <global_setting> 
  8.  
  9.     <ping_protocol>HTTP</ping_protocol> 
  10.  
  11.     <ping_port>80</ping_port> 
  12.  
  13.     <ping_path>/index.html</ping_path> 
  14.  
  15.     <response_timeout>5000</response_timeout> 
  16.  
  17.     <health_check_interval>3000</health_check_interval> 
  18.  
  19.     <unhealthy_threshold>2</unhealthy_threshold> 
  20.  
  21.     <healthy_threshold>3</healthy_threshold> 
  22.  
  23.   </global_setting> 
  24.  
  25.   <instances> 
  26.  
  27.     <instance ip="192.168.234.121"> 
  28.  
  29.     <instance ip="192.168.234.28"> 
  30.  
  31.   </instance></instance></instances> 
  32.  
  33. </test> 
  34.  
  35. XML; 
  36.  
  37. $test = new SimpleXMLElement($content); 
  38.  
  39. //获得ping_protocol的值 
  40.  
  41. $ping_protocol = $test->global_setting->ping_protocol; 
  42.  
  43. echo "ping_protocol : $ping_protocol \n"; 
  44.  
  45. //打印出所有instance的IP 
  46.  
  47. foreach ( $test->instances->instance as $instance) { 
  48.  
  49.   echo "IP: {$instance['ip']} \n" ; 
  50.  
  51.  
  52. //这里经过测试,发现使用var_dump之类的似乎不能有效输出值,用echo比较顺利, 
  53.  
  54. //还有就是上面的那个xml的例子可以去掉<?xml version="1.0" encoding="UTF-8"?>  
  55.  
  56. //也可以去掉头尾///的<<<xml,然后当做普通字符串那样对待,但是没有测试中文等 <="" pre=""> 
  57.  
  58. </xml,然后当做普通字符串那样对待,但是没有测试中文等></xml> 

Tags: php遍历 xml字符串

分享到:

相关文章