热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php中simplexml_load_file函数使用方法

在php中simplexml_load_file()函数把XML文档载入对象中之后我们就可以利用由此函数返回回的对象进行相关的操作了,下面我们看几个测试实例.例子,XML文件,代码如下:<?xmlversion="1.0"encoding...
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
当前位置:首页 > PHP教程 > php函数 > 列表
php中simplexml_load_file函数使用方法
发布: 来源:  添加日期:2014-09-12 15:24:33 浏览: 评论:0 

在php中simplexml_load_file() 函数把 XML 文档载入对象中之后我们就可以利用由此函数返回回的对象进行相关的操作了,下面我们看几个测试实例.

例子,XML文件,代码如下:

  1. xml version="1.0" encoding="ISO-8859-1"?> 
  2. <note> 
  3. <to>Georgeto> 
  4. <from>Johnfrom> 
  5. <heading>Reminderheading> 
  6. <body>Don&#39;t forget the meeting!body> 
  7. note> 

PHP 代码如下:

  1. if (file_exists(&#39;test.xml&#39;)) 
  2.   { 
  3.   $xml = simplexml_load_file(&#39;test.xml&#39;); 
  4.   var_dump($xml); 
  5.   } 
  6.  
  7. else 
  8.   { 
  9.   exit(&#39;Error.&#39;); 
  10.   } 
  11. ?> 
  12.  
  13. //输出: 
  14.  
  15. object(SimpleXMLElement)#1 (4) 
  16. ["to"]=> string(4) "George" 
  17. ["from"]=> string(4) "John" 
  18. ["heading"]=> string(8) "Reminder" 
  19. ["body"]=> string(29) "Don&#39;t forget the meeting!" 

假如有一个“iciba.xml”文件,其内容如下:

  1. "1.0" encoding="UTF-8"?> 
  2. "219" id="219" name="219"
  3.  天空 
  4.   
  5.  Array;Array; 
  6.   
  7.   The church tower stood against the sky like a finger pointing towards heaven. 
  8.   教堂的尖塔在天空的映衬下宛如指向天空的手指。 
  9.   
  10.   
  11.   A balloon floated across the sky. 
  12.   气球飘过天空。 
  13.   
  14.   
  15.   A bolt of lightning lit up the sky. 
  16.   (一道)闪电照亮了天空。 
  17.   
  18.   
  19.   A bright moving object appeared in the sky at sunset. 
  20.   日落西山时,天空出现了一个移动的发亮物体。 
  21.   
  22.   
  23.   A bright rainbow arched above. 
  24.   一弯明亮的彩虹悬挂在天空。 
  25.   
  26. 在PHP语言中我们可以用以下方法取得我们想要的值: 
  27.  
  28. $xmldata = simplexml_load_file("iciba.xml"); 
  29.  
  30. header("Content-Type: text/html; charset=UTF-8"); 
  31. print_r($xmldata); //第一部分www.phpfensi.com 
  32.  
  33. $listcount = count($xmldata->sent); 
  34.  
  35. for($i=0;$i<$listcount;$i++){ //第二部分 
  36.  $dictlist = $xmldata->sent[$i]; 
  37.  echo "例句:".$dictlist->orig; 
  38.  echo "翻译:".$dictlist->trans; 
  39. ?>“第一部分”将输出: 
  40.  
  41. SimpleXMLElement Object 
  42.     [@attributes] => Array 
  43.         ( 
  44.             [num] => 219 
  45.             [id] => 219 
  46.             [name] => 219 
  47.         ) 
  48.  
  49.     [key] => 天空 
  50.     [pos] => SimpleXMLElement Object 
  51.         ( 
  52.         ) 
  53.  
  54.     [acceptation] => Array;Array; 
  55.     [sent] => Array 
  56.         ( 
  57.             [0] => SimpleXMLElement Object 
  58.                 ( 
  59.                     [orig] => The church tower stood against the sky like a finger pointing towards heaven. 
  60.                     [trans] => 教堂的尖塔在天空的映衬下宛如指向天空的手指。 
  61.                 ) 
  62.  
  63.             [1] => SimpleXMLElement Object 
  64.                 ( 
  65.                     [orig] => A balloon floated across the sky. 
  66.                     [trans] => 气球飘过天空。 
  67.                 ) 
  68.  
  69.             [2] => SimpleXMLElement Object 
  70.                 ( 
  71.                     [orig] => A bolt of lightning lit up the sky. 
  72.                     [trans] => (一道)闪电照亮了天空。 
  73.                 ) 
  74.  
  75.             [3] => SimpleXMLElement Object 
  76.                 ( 
  77.                     [orig] => A bright moving object appeared in the sky at sunset. 
  78.                     [trans] => 日落西山时,天空出现了一个移动的发亮物体。 
  79.                 ) 
  80.  
  81.             [4] => SimpleXMLElement Object 
  82.                 ( 
  83.                     [orig] => A bright rainbow arched above. 
  84.                     [trans] => 一弯明亮的彩虹悬挂在天空。 
  85.                 ) 
  86.  
  87.         ) 
  88.  
  89. )“第二部分”将输出: 
  90.  
  91. 例句:The church tower stood against the sky like a finger pointing towards heaven. 
  92. 翻译:教堂的尖塔在天空的映衬下宛如指向天空的手指。 
  93. 例句:A balloon floated across the sky. 
  94. 翻译:气球飘过天空。 
  95. 例句:A bolt of lightning lit up the sky. 
  96. 翻译:(一道)闪电照亮了天空。 
  97. 例句:A bright moving object appeared in the sky at sunset. 
  98. 翻译:日落西山时,天空出现了一个移动的发亮物体。 
  99. 例句:A bright rainbow arched above. 
  100. 翻译:一弯明亮的彩虹悬挂在天空。 

例子,更深入的一个遍历输出生成表格,代码如下:

  1. eader("content-type:text/html; charset=utf-8"); //设置编码 
  2. $xml = simplexml_load_file(&#39;a.xml&#39;); //载入xml文件 $lists和xml文件的根节点是一样的 
  3. echo $xml->company."
    "
  4. echo $xml->town."
    id:"
  5. echo $xml->town[&#39;id&#39;]."
    parent:"
  6. echo $xml->town[&#39;parent&#39;]."
    "
  7.  
  8. echo "
    循环读取:
    "
  9. foreach($xml->user as $users){ //有多个user,取得的是数组,循环输出 
  10.     echo "-------------------
    "
  11.     echo "姓名:".$users->name."
    "
  12.     echo "编号:".$users->age."
    "
  13.     echo "性别:".$users->age[&#39;sex&#39;]."
    "
  14.     echo "序号:".$users->height."
    "
  15. }//开源代码phpfensi.com 
  16.  
  17. echo "
    循环读取:
    "
  18. foreach($xml->town as $towns){ //有多个user,取得的是数组,循环输出 
  19.     echo "-------------------
    "
  20.     echo "id:".$towns[&#39;id&#39;]."
    "
  21.     echo "归属:".$towns[&#39;parent&#39;]."
    "
  22.     echo "地区:".$towns."
    "
  23. }

推荐阅读
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 解决PHP与MySQL连接时出现500错误的方法
    本文详细探讨了当使用PHP连接MySQL数据库时遇到500内部服务器错误的多种解决方案,提供了详尽的操作步骤和专业建议。无论是初学者还是有经验的开发者,都能从中受益。 ... [详细]
  • 在哈佛大学商学院举行的Cyberposium大会上,专家们深入探讨了开源软件的崛起及其对企业市场的影响。会议指出,开源软件不仅为企业提供了新的增长机会,还促进了软件质量的提升和创新。 ... [详细]
  • 本文详细介绍了如何通过多种编程语言(如PHP、JSP)实现网站与MySQL数据库的连接,包括创建数据库、表的基本操作,以及数据的读取和写入方法。 ... [详细]
  • MySQL中枚举类型的所有可能值获取方法
    本文介绍了一种在MySQL数据库中查询枚举(ENUM)类型字段所有可能取值的方法,帮助开发者更好地理解和利用这一数据类型。 ... [详细]
  • 本文详细介绍了如何通过命令行启动MySQL服务,包括打开命令提示符窗口、进入MySQL的bin目录、输入正确的连接命令以及注意事项。文中还提供了更多相关命令的资源链接。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文介绍如何在 Unity 的 XML 配置文件中,将参数传递给自定义生命周期管理器的构造函数。我们将详细探讨 CustomLifetimeManager 类的实现及其配置方法。 ... [详细]
author-avatar
wsx迪_257
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有