好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

php循环遍历xml php循环函数

很多站长朋友们都不太清楚php循环遍历xml,今天小编就来给大家整理php循环遍历xml,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 xml用php解析是重命名php文件吗 2、 使用php循环出xml中多个相同重复的标签 3、 PHP生成和获取XML格式数据 4、 php获取xml页面的问题,如何循环获取? 5、 读数据库之后循环生成XML的PHP怎么写? 6、 PHP遍历XML文档所有节点的方法 xml用php解析是重命名php文件吗

xml用php解析不是重命名php文件,用到了php的simplexml_load_file()方法,该方法会将xml文件生成一个SimpleXMLElement对象,该对象是继承了Traversable接口的对象,即可以像数组那样遍历其子集。

这样,我们就可以循环得到xml文件的内容

使用php循环出xml中多个相同重复的标签

重复的 xml 元素节点可以用 foreach 循环取出重复元素。

示例:

// $xmlData = file_get_contents('items.xml');

$xmlElement= simplexml_load_string($xmlData, 'SimpleXMLElement', 'LIBXML_NOCDATA');

$elements = $xmlElement->CustAcctId;

foreach ($elements as $element) {

var_dump($element);

}

提示:使用 simplexml_load_string($xmlString, 'SimpleXMLElement', LIBXML_NOCDATA) 解析 xml 字符串,如果是 xml 文件,可以 file_get_contents 读取文件。

PHP生成和获取XML格式数据

在做数据接口时 我们通常要获取第三方数据接口或者给第三方提供数据接口 而这些数据格式通常是以XML或者JSON格式传输 本文将介绍如何使用PHP生成XML格式数据供第三方调用以及如何获取第三方提供的XML数据

生成XML格式数据

我们假设系统中有一张学生信息表student 需要提供给第三方调用 并有id name sex age分别记录学生的姓名 性别 年龄等信息

CREATE TABLE `student` (

`id` int( ) NOT NULL auto_increment

`name` varchar( ) NOT NULL

`sex` varchar( ) NOT NULL

`age` *** allint( ) NOT NULL default

PRIMARY KEY  (`id`)

) ENGINE=MyISAM  DEFAULT CHARSET=utf ;

首先 建立createXML php文件 先连接数据库 获取数据

include_once ( connect php ) //连接数据库

$sql = select * from student ;

$result = mysql_query($sql) or die( Invalid query: mysql_error())

while ($row = mysql_fetch_array($result)) {

$arr[] = array(

name => $row[ name ]

sex => $row[ sex ]

age => $row[ age ]

)

}

这个时候 数据就保存在$arr中 你可以使用print_r打印下数据测试

接着 建立xml 循环数组 将数据写入到xml对应的节点中

$doc = new DOMDocument( utf )   // 声明版本和编码

$doc >formatOutput = true;

$r = $doc >createElement( root )

$doc >appendChild($r)

foreach ($arr as $dat) {

$b = $doc >createElement( data )

$name = $doc >createElement( name )

$name >appendChild($doc >createTextNode($dat[ name ]))

$b >appendChild($name)

$sex = $doc >createElement( sex )

$sex >appendChild($doc >createTextNode($dat[ sex ]))

$b >appendChild($sex)

$age = $doc >createElement( age )

$age >appendChild($doc >createTextNode($dat[ age ]))

$b >appendChild($age)

$r >appendChild($b)

}

echo $doc >saveXML()

我们调用了PHP内置的类DOMDocument来处理与生成xml 最终生成的xml格式请点击这里看效果

<?xml version= encoding= utf ?>

<root>

<data>

<name>李王皓</name>

<sex>男</sex>

<age> </age>

</data>

…

</root>

获取XML格式数据

现在我们假设要从第三方获取学生信息 数据格式是XML 我们需要使用PHP解析XML 然后将解析后的数据显示或者写入本地数据库 而这里关键的一步是解析XML

PHP有很多中方法可以解析XML 其中PHP提供了内置的XMLReader类可以循序地浏览过xml档案的节点 你可以想像成游标走过整份文件的节点 并抓取需要的内容 使用XMLReader是高效的 尤其是读取非常大的xml数据 相对其他方法 使用XMLReader消耗内存非常少

header( Content type:text/; Charset=utf )

$url = // helloweba /demo/importXML/createXML php ;

$reader = new XMLReader()   //实例化XMLReader

$reader >open($url) //获取xml

$i= ;

while ($reader >read()) {

if ($reader >nodeType == XMLReader::TEXT) { //判断node类型

$m = $i% ;

if($m== )

$name = $reader >value;  //读取node值

if($m== )

$sex = $reader >value;

if($m== ){

$age = $reader >value;

$arr[] = array(

name => $name

sex => $sex

age => $age

)

}

$i++;

}

}

//print_r($arr)

lishixinzhi/Article/program/PHP/201311/21636

php获取xml页面的问题,如何循环获取?

关于你这个问题,我还是建议你用xml读取

这个是不会出错的

当然也可以用正则,不过如果items之间的属性位置变化了,我写的这个正则就不好用了,以下是保证属性位置不变的情况的例子,你把想得到的值,用foreach 循环$matches就可以

$xmlstr = @file_get_contents('data_show.xml');

$re='/<variable_sysnew\s*name="([^"]*)"\s*value="([^"]*)"\s*web_html="([^"]*)"\s*title_name="([^"]*)"\s*timesvalue="([^"]*)"/i';

$re_total='/<variable_total\s*totalman="([^"]*)"\s*totalmenoy="([^"]*)"\s*totaljifen="([^"]*)"/i';

@header("Content-Type: text/html; charset=utf-8");

if(preg_match($re_total, $xmlstr, $mat)){

print_r($mat);

echo '<hr/>';

}

if(preg_match_all($re, $xmlstr, $matches)){

print_r($matches);

echo '<hr/>';

}

读数据库之后循环生成XML的PHP怎么写?

我的思路是,直接使用动态的xml,让flash读取这个文档,这样就不用实时的去生成xml文件了。当然,这个xml文件是.php格式的,所以你必须在flash中吧读取的文件地址改成php的,就跟你写一个php页面一样,不同的是这个php文件输出的内容是一个xml格式的文本。

比如你现在建立文件 xml.php

<?php

echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>

<gallery>

<settings>";

//若此处也有动态信息 按需要进行调用

echo"</settings>

<items>";

//在此循环你的图片数据

$data = ??

while( $data ) {

echo "<item source=\"".$data['source']."\" description=\"".$data['description']."\" />";

}

echo '</items>';

?>

PHP遍历XML文档所有节点的方法

本文实例讲述了PHP遍历XML文档所有节点的方法。分享给大家供大家参考。具体实现方法如下:

1.

contact.xml代码:

<contact

id="43956">

<personal>

<name>

<first>J</first>

<middle>J</middle>

<last>J</last>

</name>

<title>Manager</title>

<employer>National</employer>

<dob>1971-12-22</dob>

</personal>

</contact>

2.

php代码:

<?php

function

walk_tree

($node,

$depth

=

0)

{

for

($i

=

0,

$indent

=

'';

$i

<

$depth;

$i++)

$indent

.=

'

';

if

($node->type

==

XML_ELEMENT_NODE)

{

print

($indent

.

$node->tagname

.

"\n");

$kids

=

$node->children

();

$nkids

=

count

($kids);

if

($nkids

>

0)

{

$depth++;

for

($i

=

0;

$i

<

$nkids;

$i++)

walk_tree

($kids[$i],

$depth);

$depth--;

}

}

}

$doc

=

xmldocfile

('contact.xml');

print

("<pre>\n");

walk_tree

($doc->root

());

print

("</pre>\n");

?>

希望本文所述对大家的php程序设计有所帮助。

关于php循环遍历xml的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php循环遍历xml php循环函数的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did195117
更新时间:2023-04-26   阅读:24次

上一篇: php7.2安装 php73安装

下一篇:图片外链php 图片外链在线生成

相关资讯

最新资料更新

  • 1.phpcurl带证书 php证书查询系统
  • 2.php技术网学习 php技术门户
  • 3.数组对象转为数组php 对象数组转string
  • 4.php如何转换json php如何转换视频
  • 5.phpmywind phpmywind去重复
  • 6.包含php-fpm-t的词条
  • 7.php包含eaplay吗 php是否包含
  • 8.php批量取中间 php批量删除数据
  • 9.php如何制作游戏 php游戏源码
  • 10.php存储的知识 php会话保存数据的两种方式是
  • 11.php下面有哪些技术 php运用的技术php开发有哪些实用的技术
  • 12.php网页滚动代码 php 如何做滑动加载
  • 13.php后端需要css吗 php后端教程
  • 14.php换文字颜色 php文字颜色代码
  • 15.qbapi.php的简单介绍
  • 16.web安全php Web安全原理分析与实践
  • 17.php队列和缓存 php中的九大缓存技术
  • 18.proxy.php proxyphp?url
  • 19.php判断多个数字 php判断字符串是否为数字
  • 20.php前端页面源码 php前端页面源码是多少

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://www.haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]