热门标签 | 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. }

推荐阅读
  • PHP与MySQL的Web应用开发技术深入解析
    PHP与MySQL的Web应用开发技术深入解析 ... [详细]
  • Python 实战:异步爬虫(协程技术)与分布式爬虫(多进程应用)深入解析
    本文将深入探讨 Python 异步爬虫和分布式爬虫的技术细节,重点介绍协程技术和多进程应用在爬虫开发中的实际应用。通过对比多进程和协程的工作原理,帮助读者理解两者在性能和资源利用上的差异,从而在实际项目中做出更合适的选择。文章还将结合具体案例,展示如何高效地实现异步和分布式爬虫,以提升数据抓取的效率和稳定性。 ... [详细]
  • 利用树莓派畅享落网电台音乐体验
    最近重新拾起了闲置已久的树莓派,这台小巧的开发板已经沉寂了半年多。上个月闲暇时间较多,我决定将其重新启用。恰逢落网电台进行了改版,回忆起之前在树莓派论坛上看到有人用它来播放豆瓣音乐,便萌生了同样的想法。通过一番调试,终于实现了在树莓派上流畅播放落网电台音乐的功能,带来了全新的音乐享受体验。 ... [详细]
  • 在处理遗留数据库的映射时,反向工程是一个重要的初始步骤。由于实体模式已经在数据库系统中存在,Hibernate 提供了自动化工具来简化这一过程,帮助开发人员快速生成持久化类和映射文件。通过反向工程,可以显著提高开发效率并减少手动配置的错误。此外,该工具还支持对现有数据库结构进行分析,自动生成符合 Hibernate 规范的配置文件,从而加速项目的启动和开发周期。 ... [详细]
  • PHP开发人员薪资水平分析:工程师平均工资概况
    PHP开发人员薪资水平分析:工程师平均工资概况 ... [详细]
  • 【Linux进阶指南】第一阶段第三课:体验与部署Ubuntu系统
    在正式踏上Linux学习之旅之前,本课程将引导你深入体验和部署Ubuntu系统。通过详细的操作步骤和实践演练,你将掌握Ubuntu的基本安装、配置及常用命令,为后续的进阶学习打下坚实的基础。此外,课程还将介绍如何解决常见问题和优化系统性能,帮助你更加高效地使用Ubuntu。 ... [详细]
  • 掌握Android UI设计:利用ZoomControls实现图片缩放功能
    本文介绍了如何在Android应用中通过使用ZoomControls组件来实现图片的缩放功能。ZoomControls提供了一种简单且直观的方式,让用户可以通过点击放大和缩小按钮来调整图片的显示大小。文章详细讲解了ZoomControls的基本用法、布局设置以及与ImageView的结合使用方法,适合初学者快速掌握Android UI设计中的这一重要功能。 ... [详细]
  • 2016-2017学年《网络安全实战》第三次作业
    2016-2017学年《网络安全实战》第三次作业总结了教材中关于网络信息收集技术的内容。本章主要探讨了网络踩点、网络扫描和网络查点三个关键步骤。其中,网络踩点旨在通过公开渠道收集目标信息,为后续的安全测试奠定基础,而不涉及实际的入侵行为。 ... [详细]
  • 1. 设置用户密码:使用 `slappasswd` 工具生成加密密码,确保账户安全。具体步骤如下:输入命令 `slappasswd -s NewPassword`,系统将提示重新输入新密码,并生成加密后的哈希值 {SSHA}xxxxxxxxxxxxxxxxx。2. 编写配置文件:编辑 `vildapus` 配置文件,添加必要的用户账户信息,以确保新用户能够顺利登录系统。 ... [详细]
  • 【Linux】CentOS 7 远程连接指南:高效安全的远程管理方法
    在 CentOS 7 中实现高效且安全的远程管理,本文详细介绍了如何检查和安装配置 OpenSSH。首先,通过 `yum list installed` 命令检查系统是否已安装 OpenSSH,若未安装,则使用 `yum install openssh-server` 进行安装。随后,配置 SSH 服务以确保其安全性和稳定性,包括修改默认端口、禁用 root 登录等关键步骤。此外,还提供了常见问题的解决方案,帮助用户顺利进行远程连接。 ... [详细]
  • 虚拟机网络设置与数据库远程连接优化指南
    本文针对个人计算机上虚拟机网络配置与数据库远程连接的问题,提供了一套详细的优化指南。在探讨远程数据库访问前,需确保网络配置正确,特别是桥接模式的设置。通过合理的网络配置,可以有效解决因虚拟机或网络问题导致的连接失败,提升远程访问的稳定性和效率。 ... [详细]
  • 在尝试为 Unity 编译一个简单的 Java 库时,运行 `ant jar` 命令后遇到了 Java I/O 异常。具体错误信息为“无法启动程序 ${aAPT},错误代码 2”,这通常表示指定的文件或目录不存在。此问题可能是由于环境配置不正确或路径设置有误导致的。建议检查相关路径和环境变量,确保所有依赖项都已正确安装和配置。 ... [详细]
  • 在MySQL中更新密码时,首先需要在DOS窗口中切换到mysql安装目录,并使用`--skip-grant-tables`参数启动MySQL服务,以跳过权限表验证。接着,在MySQL命令行中执行相应的SQL语句来设置新密码。完成密码更新后,重启MySQL服务以使更改生效。此外,对于电脑快捷方式的修改,可以通过右键点击快捷方式,选择“属性”,在弹出的窗口中进行路径或目标的修改,最后点击“应用”和“确定”保存更改。 ... [详细]
  • 本文探讨了利用Java实现WebSocket实时消息推送技术的方法。与传统的轮询、长连接或短连接等方案相比,WebSocket提供了一种更为高效和低延迟的双向通信机制。通过建立持久连接,服务器能够主动向客户端推送数据,从而实现真正的实时消息传递。此外,本文还介绍了WebSocket在实际应用中的优势和应用场景,并提供了详细的实现步骤和技术细节。 ... [详细]
  • 开发日志:在插入数据到一张表的同时更新另一张表的技术细节与最佳实践 ... [详细]
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社区 版权所有