您当前的位置: 首页 > 网站编程 > PHP教程 > php中simplexml_load_file函数使用

php中simplexml_load_file函数使用

作者:不详 来源:网络 发布时间: 2014-08-08 11:45 点击:
例子 XML 文件: 代码如下 ?xml version=1.0 encoding=ISO-8859-1? note toGeorge/to fromJohn/from headingReminder/heading bodyDon't forget the meeting!/body /note PHP 代码: ?php if (file_exists('test.xml')) { $xml = simplexml_load_file('test.xml'); var

php中simplexml_load_file函数使用

  例子

  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(4) "George"

  ["from"]=> string(4) "John"

  ["heading"]=> string(8) "Reminder"

  ["body"]=> string(29) "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); //第一部分www.111cn.net

  $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>";

  }

  echo "<br>循环读取:<br>";

  foreach($xml->town as $towns){ //有多个user,取得的是数组,循环输出

     echo "-------------------<br>";

     echo "id:".$towns['id']."<br>";

     echo "归属:".$towns['parent']."<br>";

     echo "地区:".$towns."<br>";

  }

  
分享到:
本文"php中simplexml_load_file函数使用"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4