Heim Backend-Entwicklung PHP-Tutorial php中simplexml_load_file函数用法实例_PHP

php中simplexml_load_file函数用法实例_PHP

May 31, 2016 pm 07:28 PM
php 函数

本文实例讲述了php中simplexml_load_file函数用法。分享给大家供大家参考。具体用法分析如下:

在php中simplexml_load_file() 函数把 XML 文档载入对象中之后我们就可以利用由此函数返回的对象进行相关的操作了,下面我们看几个测试实例.

例子,XML文件代码如下:

代码如下:

 

George
John
Reminder
Don't forget the meeting!


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”文件,其内容如下:

代码如下:

 
 
 天空 
  
 Array;Array; 
  
  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. 
  一弯明亮的彩虹悬挂在天空。 
 
 


在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  $dictlist = $xmldata->sent[$i]; 
 echo "
例句:".$dictlist->orig; 
 echo "
翻译:".$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."
"; 
echo $xml->town."
id:"; 
echo $xml->town['id']."
parent:"; 
echo $xml->town['parent']."
"; 
 
echo "
循环读取:
"; 
foreach($xml->user as $users){ //有多个user,取得的是数组,循环输出 
    echo "-------------------
"; 
    echo "姓名:".$users->name."
"; 
    echo "编号:".$users->age."
"; 
    echo "性别:".$users->age['sex']."
"; 
    echo "序号:".$users->height."
"; 
}
 
echo "
循环读取:
"; 
foreach($xml->town as $towns){ //有多个user,取得的是数组,循环输出 
    echo "-------------------
"; 
    echo "id:".$towns['id']."
"; 
    echo "归属:".$towns['parent']."
"; 
    echo "地区:".$towns."
"; 
}

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

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

CakePHP Datum und Uhrzeit

CakePHP-Projektkonfiguration CakePHP-Projektkonfiguration Sep 10, 2024 pm 05:25 PM

CakePHP-Projektkonfiguration

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

CakePHP-Datei hochladen

CakePHP-Routing CakePHP-Routing Sep 10, 2024 pm 05:25 PM

CakePHP-Routing

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

Besprechen Sie CakePHP

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein

CakePHP-Kurzanleitung CakePHP-Kurzanleitung Sep 10, 2024 pm 05:27 PM

CakePHP-Kurzanleitung

See all articles