php与xml文件(PHP读取XML文件的方法实例总结DOMDocument及simplexml方法)
类别:编程学习 浏览量:1389
时间:2021-10-22 07:55:59 php与xml文件
PHP读取XML文件的方法实例总结DOMDocument及simplexml方法本文实例讲述了PHP读取XML文件的方法。分享给大家供大家参考,具体如下:
使用DOMDocument对象读取xml
创建一个DOMDocument对象
|
$doc = new DOMDocument(); |
载入xml文件
|
$doc ->load( "book.xml" ); |
获取标签对象
|
$books = $doc ->getElementsByTagName( "book" ); |
获取标签的子对象
|
$titles = $book ->getElementsByTagName( "title" ); |
获取标签的值或属性
|
$title = $titles ->item(0)->nodeValue; |
实例1,获取图书列表
book.xml
|
<? xml version = "1.0" encoding = "UTF-8" ?> < bookstore > < book > < title >PHP和MySQL开发</ title > < author >谭浩强</ author > </ book > < book > < titile >xml从入门到精通</ titile > < author >郑智化</ author > </ book > </ bookstore > |
load.php
|
<?php header( "Content-type:text/html;charset=utf8" ); $doc = new DOMDocument(); //创建DOMDocument对象 $doc ->load( "book.xml" ); //打开book.xml $books = $doc ->getElementsByTagName( "book" ); //获取book标签对象 foreach ( $books as $book ){ //遍历对象 $titles = $book ->getElementsByTagName( "title" ); //获取book标签下的title标签 $title = $titles ->item(0)->nodeValue; //获取标签的值 $authors = $book ->getElementsByTagName( "author" ); //获取book标签下的author标签 $author = $authors ->item(0)->nodeValue; //获取标签的值 $item [ "title" ] = $title ; $item [ "author" ] = $author ; $bookinfo [] = $item ; } var_dump( $bookinfo ); |
实例2,读取配置文件
config.xml
|
<? xml version = "1.0" encoding = "UTF-8" ?> < mysql > < host >127.0.0.1</ host > < username >root</ username > < password ></ password > < database >test</ database > </ mysql > |
config.php
|
<?php header( "Content-type:text/html;charset=utf8" ); $doc = new DOMDocument(); //创建DOMDocument对象 $doc ->load( "config.xml" ); //打开config.xml $mysql = $doc ->getElementsByTagName( "mysql" ); //获取mysql标签对象 $host = $mysql ->item(0)->getElementsByTagName( "host" ); $config [ "host" ] = $host ->item(0)->nodeValue; $username = $mysql ->item(0)->getElementsByTagName( "username" ); $config [ "username" ] = $username ->item(0)->nodeValue; $password = $mysql ->item(0)->getElementsByTagName( "password" ); $config [ "password" ] = $password ->item(0)->nodeValue; $database = $mysql ->item(0)->getElementsByTagName( "database" ); $config [ "database" ] = $database ->item(0)->nodeValue; var_dump( $config ); |
使用simplexml方法读取xml
实例1,获取图书列表
load.php
|
<?php header( "Content-type:text/html;charset=utf8" ); $books = simplexml_load_file( "book.xml" ); foreach ( $books as $book ){ $item [ "title" ] = $book ->title; $item [ "author" ] = $book ->author; $booklist [] = $item ; } var_dump( $booklist ); |
实例2,读取配置文件
config.php
|
<?php header( "Content-type:text/html;charset=utf8" ); $mysql = simplexml_load_file( "config.xml" ); $config [ 'host' ] = $mysql ->host; $config [ 'username' ] = $mysql ->username; $config [ 'password' ] = $mysql ->password; $config [ 'databse' ] = $mysql ->database; var_dump( $config ); |
希望本文所述对大家PHP程序设计有所帮助。
原文链接:https://blog.csdn.net/koastal/article/details/50705267
您可能感兴趣
- phpstudy安装后在哪里开启(phpstudy怎么卸载?如何彻底删除phpstudy)
- apache配置详解(apache2.2和php5.2.17在windows下整合过程的错误解决方法)
- php数组写法(php文件操作之文件写入字符串、数组的方法分析)
- 学会php的路线图(PHP进阶学习之Geo的地图定位算法详解)
- php对称算法示例(php解决约瑟夫环算法实例分析)
- thinkphp微信开发教程(微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解)
- php服务号openid(php获取微信openid方法总结)
- thinkphp框架切换数据库(ThinkPHP3.2.3框架实现执行原生SQL语句的方法示例)
- php上传大文件教程(PHP实现带进度条的Ajax文件上传功能示例)
- thinkphp5.1手动连接mysql数据库(thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例)
- php无法读取txt文件(php写入txt乱码的解决方法)
- thinkphp6.0安装(使用composer安装使用thinkphp6.0框架问题视频教程)
- php数组是怎么实现的(PHP里的$_GET数组介绍)
- phpstudymysql数据库启动不了(phpstudy mysql启动不了的解决方法)
- php环境搭建windows系统(Windows环境下安装PHP Pear的方法图文教程)
- dedecms标签调用原理(DEDECMS安全设置 执行php脚本限制设置方法apache+nginx)
- 这里输入关键词(怎么输入关键词搜索)
- 34岁的舒畅,就这样走到了末路,不知会不会后悔15年前的草率决定(就这样走到了末路)
- 不走心的古装造型 舒畅 毁容式 出演,萧蔷雷出新高度(不走心的古装造型)
- 嘉南传 第22集(嘉南传第22集)
- 哪版孙悟空最萌 黄渤躺萌了(哪版孙悟空最萌)
- 融入小人物的喜怒哀乐,黄渤饰演的角色为什么让人观看时欲罢不能(融入小人物的喜怒哀乐)
热门推荐
- python快速数据分类(Python基于滑动平均思想实现缺失数据填充的方法)
- nodejssocket文件传输(node+socket实现简易聊天室功能)
- fileoutstream使用方法(Filestream使用简单步骤总结)
- 如何获取存储过程返回值
- axios实现原理(项目中Axios二次封装实例Demo)
- python的几种数据结构(python中的数据结构比较)
- CSS命名规范
- python 制作图片文字识别(如何使用Python进行OCR识别图片中的文字)
- drools动态执行规则(使用swoole 定时器变更超时未支付订单状态的解决方案)
- 超简单使用Python换脸实例(超简单使用Python换脸实例)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9