php中simplexml_load_file函数用法实例
发布:smiling 来源: PHP粉丝网 添加日期:2021-04-25 14:28:49 浏览: 评论:0
这篇文章主要介绍了php中simplexml_load_file函数用法,以实例形式详细的讲述了simplexml_load_file函数读取XML文件的具体方法,非常具有实用价值,需要的朋友可以参考下。
本文实例讲述了php中simplexml_load_file函数用法。分享给大家供大家参考。具体用法分析如下:
在php中simplexml_load_file() 函数把 XML 文档载入对象中之后我们就可以利用由此函数返回的对象进行相关的操作了,下面我们看几个测试实例.
例子,XML文件代码如下:
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <note>
- <to>George</to>
- <from>John</from>
- <heading>Reminder</heading>
- <body>Don't forget the meeting!</body>
- </note>
PHP 代码如下:
- <?php
- if (file_exists('test.xml'))
- {
- $xml = simplexml_load_file('test.xml');
- var_dump($xml);
- }
- else
- {
- exit('Error.');
- }
- ?>
运行输出结果如下:
- object(SimpleXMLElement)#1 (4) {
- ["to"]=>
- string(6) "George"
- ["from"]=>
- string(4) "John"
- ["heading"]=>
- string(8) "Reminder"
- ["body"]=>
- string(25) "Don't forget the meeting!"
- }
假如有一个“iciba.xml”文件,其内容如下:
- <?xml version="1.0" encoding="UTF-8"?>
- <dict num="219" id="219" name="219">
- <key>天空</key>
- <pos></pos>
- <acceptation>Array;Array;</acceptation>
- <sent>
- <orig>The church tower stood against the sky like a finger pointing towards heaven.</orig>
- <trans>教堂的尖塔在天空的映衬下宛如指向天空的手指。</trans>
- </sent>
- <sent>
- <orig>A balloon floated across the sky.</orig>
- <trans>气球飘过天空。</trans>
- </sent>
- <sent>
- <orig>A bolt of lightning lit up the sky.</orig>
- <trans>(一道)闪电照亮了天空。</trans>
- </sent>
- <sent>
- <orig>A bright moving object appeared in the sky at sunset.</orig>
- <trans>日落西山时,天空出现了一个移动的发亮物体。</trans>
- </sent>
- <sent>
- <orig>A bright rainbow arched above.</orig>
- <trans>一弯明亮的彩虹悬挂在天空。</trans>
- </sent>
- </dict>
在PHP语言中我们可以用以下方法取得我们想要的值:
- <?php
- $xmldata = simplexml_load_file("iciba.xml");
- header("Content-Type: text/html; charset=UTF-8");
- print_r($xmldata); //第一部分
- $listcount = count($xmldata->sent);
- for($i=0;$i<$listcount;$i++){ //第二部分
- $dictlist = $xmldata->sent[$i];
- echo "<br />例句:".$dictlist->orig;
- echo "<br />翻译:".$dictlist->trans;
- }
- ?>
“第一部分”将输出:
- SimpleXMLElement Object
- (
- [@attributes] => Array
- (
- [num] => 219
- [id] => 219
- [name] => 219
- )
- [key] => 天空
- [pos] => SimpleXMLElement Object
- (
- )
- [acceptation] => Array;Array;
- [sent] => Array
- (
- [0] => SimpleXMLElement Object
- (
- [orig] => The church tower stood against the sky like a finger pointing towards heaven.
- [trans] => 教堂的尖塔在天空的映衬下宛如指向天空的手指。
- )
- [1] => SimpleXMLElement Object
- (
- [orig] => A balloon floated across the sky.
- [trans] => 气球飘过天空。
- )
- [2] => SimpleXMLElement Object
- (
- [orig] => A bolt of lightning lit up the sky.
- [trans] => (一道)闪电照亮了天空。
- )
- [3] => SimpleXMLElement Object
- (
- [orig] => A bright moving object appeared in the sky at sunset.
- [trans] => 日落西山时,天空出现了一个移动的发亮物体。
- )
- [4] => SimpleXMLElement Object
- (
- [orig] => A bright rainbow arched above.
- [trans] => 一弯明亮的彩虹悬挂在天空。
- )
- )
- )
“第二部分”将输出:
例句:The church tower stood against the sky like a finger pointing towards heaven.
翻译:教堂的尖塔在天空的映衬下宛如指向天空的手指。
例句:A balloon floated across the sky.
翻译:气球飘过天空。
例句:A bolt of lightning lit up the sky.
翻译:(一道)闪电照亮了天空。
例句:A bright moving object appeared in the sky at sunset.
翻译:日落西山时,天空出现了一个移动的发亮物体。
例句:A bright rainbow arched above.
翻译:一弯明亮的彩虹悬挂在天空。
例子,更深入的一个遍历输出生成表格,代码如下:
- eader("content-type:text/html; charset=utf-8"); //设置编码
- $xml = simplexml_load_file('a.xml'); //载入xml文件 $lists和xml文件的根节点是一样的
- echo $xml->company."<br>";
- echo $xml->town."<br>id:";
- echo $xml->town['id']."<br>parent:";
- echo $xml->town['parent']."<br>";
- echo "<br>循环读取:<br>";
- foreach($xml->user as $users){ //有多个user,取得的是数组,循环输出
- echo "-------------------<br>";
- echo "姓名:".$users->name."<br>";
- echo "编号:".$users->age."<br>";
- echo "性别:".$users->age['sex']."<br>";
- echo "序号:".$users->height."<br>";
- } //www.phpfensi.com
- echo "<br>循环读取:<br>";
- foreach($xml->town as $towns){ //有多个user,取得的是数组,循环输出
- echo "-------------------<br>";
- echo "id:".$towns['id']."<br>";
- echo "归属:".$towns['parent']."<br>";
- echo "地区:".$towns."<br>";
- }
希望本文所述对大家的PHP程序设计有所帮助。
Tags: simplexml_load_file
- 上一篇:php实现的ping端口函数实例
- 下一篇:PHP之sprintf函数用法详解
相关文章
- ·php中simplexml_load_file()函数用法详细(2014-08-20)
- ·php中simplexml_load_file函数使用方法(2014-09-12)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)