PHP进行解析xml文件的操作是什么,用什么方法
Admin 2022-06-29 群英技术资讯 1003 次浏览
这篇文章主要介绍“PHP进行解析xml文件的操作是什么,用什么方法”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP进行解析xml文件的操作是什么,用什么方法”文章能帮助大家解决问题。本文实例讲述了php 使用expat方式解析xml文件操作。分享给大家供大家参考,具体如下:
test.xml:
<?xml version="1.0" encoding="UTF-8"?> <notes> <note> <to>George</to> <from>John</from> <heading>Reminder</heading> <body>Don't forget the meeting!</body> </note> <note> <to>George2</to> <from>John2</from> <heading>Reminder2</heading> <body>Don't forget the meeting!2</body> </note> <instances> <instance st="192.168.234.121" /> <instance st="192.168.234.28" /> </instances> </notes>
PHP文件:
<?php
// Initialize the XML parser
$parser = xml_parser_create();
// Function to use at the start of an element
function start($parser, $element_name, $element_attrs)
{
switch ($element_name) {
case "NOTE":
echo "-- Note --<br />";
break;
case "TO":
echo "To: ";
break;
case "FROM":
echo "From: ";
break;
case "HEADING":
echo "Heading: ";
break;
case "BODY":
echo "Message: ";
}
}
// Function to use at the end of an element
function stop($parser, $element_name)
{
echo "<br />";
}
// Function to use when finding character data
function char($parser, $data)
{
echo $data;
}
// Specify element handler
xml_set_element_handler($parser, "start", "stop");
// Specify data handler
xml_set_character_data_handler($parser, "char");
// Open XML file
// $fp = fopen("test.xml", "r");
// Read data
// while ($data = fread($fp, 10)) {
// xml_parse($parser, $data, feof($fp)) or die(sprintf("XML Error: %s at line %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser)));
// }
// fclose($fp);
$data = file_get_contents("test.xml");
xml_parse($parser, $data) or die(sprintf("XML Error: %s at line %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser)));
// Free the XML parser
xml_parser_free($parser);
?>
运行结果:
-- Note --
To: George
From: John
Heading: Reminder
Message: Don't forget the meeting!-- Note --
To: George2
From: John2
Heading: Reminder2
Message: Don't forget the meeting!2
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要给大家分享yii2框架数据库关联查询的操作,对大家学习yii2框架具有一定的借鉴价值,感兴趣的朋友可以参考一下,希望大家阅读完这篇文章能有所收获,下面我们一起来学习一下吧。
优惠券活动,具体还是要根据自己的需求。以下是最近实现的优惠券活动,主要的业务需求:根据后端设置优惠券模板,用户类型设置,优惠券活动的开始与结束时间,最后生成不同的优惠券活动链接。
在thinkphp中,fetch方法用于渲染模板文件输出,该方法不会直接渲染输出,而是支持模板或者内容的标签解析,返回解析后的内容,渲染输出系统也会自动调用send方法进行渲染输出,语法为“$this->fetch(模板名称);”。
工厂模式是PHP设计模式中最常见的模式之一,是大家需要掌握的一个知识。对此,文本给大家详细介绍了工厂模式的原理、使用等相关内容,对新手学习工厂模式有一定的参考价值,下面就跟随小编一起学习一下吧。
文件上传:if($_FILES&&$_FILES['attachment']&&$_FILES['attachment']['tmp_name']){$filesize=$_FILES['attachment']['size'];//文件上传大小限制:5M...
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008