XML文件(cy.xml)如下: 復(fù)制代碼 代碼如下: <?xml version=”1.0″ encoding=”gb2312″?> <xml> <list>1</list> <list>2</list> <list>3</list> </xml> Php文件(cy.php)如下: 復(fù)制代碼 " /> 久久亚洲AV成人无码动态图,男人J放进女人P全黄网站,麻豆第一区MV免费观看网站

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP讀取XML值的代碼(推薦)

php讀取XML最簡(jiǎn)單的情況:

XML文件(cy.xml)如下:
復(fù)制代碼 代碼如下:
<?xml version=”1.0″ encoding=”gb2312″?>
<xml>
<list>1</list>
<list>2</list>
<list>3</list>
</xml>

php文件(cy.php)如下:
復(fù)制代碼 代碼如下:
<?php
$xml = new DOMDocument();
$xml->load('cy.xml');
foreach($xml->getElementsByTagName('list') as $list)
{
$value = $list->firstChild->nodeValue;
echo $value.”<br />”;
}
?>

cy.php的運(yùn)行結(jié)果:
1
2
3

=============

php讀取XML稍微復(fù)雜一點(diǎn)的情況:

cy.xml如下:
復(fù)制代碼 代碼如下:
<?xml version=”1.0″ encoding=”gb2312″?>
<xml>
<main>
<list>1</list>
<list>2</list>
<list>3</list>
</main>
</xml>

cy.php如下(和第一種情況沒(méi)有任何變化):
復(fù)制代碼 代碼如下:
<?php
$xml = new DOMDocument();
$xml->load('cy.xml');
foreach($xml->getElementsByTagName('list') as $list)
{
$value = $list->firstChild->nodeValue;
echo $value.”<br />”;
}
?>

cy.php的運(yùn)行結(jié)果和第一次也相同:
1
2
3

php讀取XML第三種情況:

XML文件(cy.xml)如下:
復(fù)制代碼 代碼如下:
<?xml version=”1.0″ encoding=”gb2312″?>
<xml>
<main>
<list>1</list>
<list>2</list>
<list>3</list>
</main>
<main>
<list>4</list>
<list>5</list>
<list>6</list>
</main>
</xml>

php文件(cy.php)如下(和第一次依然沒(méi)有變化):
復(fù)制代碼 代碼如下:
<?php
$xml = new DOMDocument();
$xml->load('cy.xml');
foreach($xml->getElementsByTagName('list') as $list)
{
$value = $list->firstChild->nodeValue;
echo $value.”<br />”;
}
?>

cy.php的輸出結(jié)果:
1
2
3
4
5
6

===========

php讀取XML第四種情況,保持cy.xml不變,改變cy.php:

XML文件(cy.xml)如下:
復(fù)制代碼 代碼如下:
<?xml version=”1.0″ encoding=”gb2312″?>
<xml>
<main>
<list>1</list>
<list>2</list>
<list>3</list>
</main>
<main>
<list>4</list>
<list>5</list>
<list>6</list>
</main>
</xml>

php文件(cy.php)如下:
復(fù)制代碼 代碼如下:
<?php
$xml = new DOMDocument();
$xml->load('cy.xml');
$main = $xml->getElementsByTagName('main');
foreach( $main as $main)
{
$list = $main->getElementsByTagName( “l(fā)ist” );
foreach ( $list as $list )
{
$value = $list->firstChild->nodeValue;
echo $value.”<br />”;
}
}
?>

cy.php輸出結(jié)果:
1
2
3
4
5
6

為什么兩次的cy.php不同,但輸出結(jié)果是相同的?讓我們來(lái)看下一個(gè)例子

==============

php讀取XML第五種情況,改變cy.xml,使cy.php保持第四種情況:

XML文件(cy.xml)如下:
復(fù)制代碼 代碼如下:
<?xml version=”1.0″ encoding=”gb2312″?>
<xml>

<main>
<list>1</list>
<list>2</list>
<list>3</list>
</main>
<main>
<list>4</list>
<list>5</list>
<list>6</list>
</main>
<m>
<list>7</list>
<list>8</list>
<list>9</list>
</m>

</xml>

php文件(cy.php)和第四種情況相同:
復(fù)制代碼 代碼如下:
<?php
$xml = new DOMDocument();
$xml->load('cy.xml');
$main = $xml->getElementsByTagName('main');
foreach( $main as $main)
{
$list = $main->getElementsByTagName( “l(fā)ist” );
foreach ( $list as $list )
{
$value = $list->firstChild->nodeValue;
echo $value.”<br />”;
}
}
?>

cy.php輸出結(jié)果為:
1
2
3
4
5
6

為什么
<m>
<list>7</list>
<list>8</list>
<list>9</list>
</m>
中的7,8,9沒(méi)有被讀出來(lái)?
因?yàn)槲覀兊腸y.php只讀取<main></main>標(biāo)記中的內(nèi)容.<m></m>標(biāo)記中的內(nèi)容是不會(huì)被讀取的.
我們這里所提到的”標(biāo)記”,在XML里被稱做”節(jié)點(diǎn)”;
關(guān)于”節(jié)點(diǎn)”的相關(guān)概念,我們將在以后說(shuō)明.

php讀取XML情況六,再foreach一次,我們把7,8,9讀出來(lái)!:

XML文件(cy.xm)如下:
復(fù)制代碼 代碼如下:
<?xml version=”1.0″ encoding=”gb2312″?>
<xml>
<main>
<list>1</list>
<list>2</list>
<list>3</list>
</main>
<main>
<list>4</list>
<list>5</list>
<list>6</list>
</main>
<m>
<list>7</list>
<list>8</list>
<list>9</list>
</m>
</xml>

php文件(cy.php)如下:
復(fù)制代碼 代碼如下:
<?php
$xml = new DOMDocument();
$xml->load('cy.xml');
$main = $xml->getElementsByTagName('main');
foreach( $main as $main)
{
$list = $main->getElementsByTagName( “l(fā)ist” );
foreach ( $list as $list )
{
$value = $list->firstChild->nodeValue;
echo $value.”<br />”;
}
}
$m = $xml->getElementsByTagName('m');
foreach( $m as $m)
{
$list = $m->getElementsByTagName( “l(fā)ist” );
foreach ( $list as $list )
{
$value = $list->firstChild->nodeValue;
echo $value.”<br />”;
}
}
?>

cy.php輸出結(jié)果:
1
2
3
4
5
6
7
8
9

===============

php讀取XML情況七,cy.xml變得更復(fù)雜一些:

XML文件(cy.xml)如下:
復(fù)制代碼 代碼如下:
<?xml version=”1.0″ encoding=”gb2312″?>
<xml>
<main>
<title>a</title>
<list>1</list>
<list>2</list>
<list>3</list>
</main>
<main>
<title>b</title>
<list>4</list>
<list>5</list>
<list>6</list>
</main>
<m>
<title>c</title>
<list>7</list>
<list>8</list>
<list>9</list>
</m>
</xml>

那么,我們?nèi)绾沃蛔x出<main></main>內(nèi)<title></title>中的值呢?

php文件(cy.php)如下:
復(fù)制代碼 代碼如下:
<?php
$xml = new DOMDocument();
$xml->load('cy.xml');
$main = $xml->getElementsByTagName('main');
foreach( $main as $main)
{
$list = $main->getElementsByTagName( “l(fā)ist” );
foreach ( $list as $list )
{
$value = $list->firstChild->nodeValue;
echo $value.”<br />”;
}
$title = $main->getElementsByTagName( “title” );
foreach ( $title as $title )
{
$value = $title->firstChild->nodeValue;
echo $value.”<br />”;
}
}

$m = $xml->getElementsByTagName('m');
foreach( $m as $m)
{
$list = $m->getElementsByTagName( “l(fā)ist” );
foreach ( $list as $list )
{
$value = $list->firstChild->nodeValue;
echo $value.”<br />”;
}
}
?>

cy.php輸出結(jié)果:
1
2
3
a
4
5
6

7
8
9

想一下,如何讀出<m>中<title></title>的值?

php讀取XML再通過(guò)一個(gè)例子鞏固一下:

XML文件(cy.xml)如下:
復(fù)制代碼 代碼如下:
<?xml version=”1.0″ encoding=”gb2312″?>
<LevelOne>
<LevelTwo>
<LevelThree id=”1″>This is Text One</LevelThree>
<LevelThree id=”2″>This is Text Two</LevelThree>
<LevelThree id=”3″>This is Text Three</LevelThree>
</LevelTwo>
<LevelTwo>
<LevelThree id=”4″>This is Text Four</LevelThree>
<LevelThree id=”5″>This is Text Five</LevelThree>
<LevelThree id=”6″>This is Text Six</LevelThree>
</LevelTwo>
</LevelOne>

php文件(cy.php)如下:
復(fù)制代碼 代碼如下:
<?php
$xml = new DOMDocument(); //建立一個(gè)DOMDocument
$xml->load('cy.xml'); //php指定需要讀取xml文件的位置
$LevelOne = $xml->getElementsByTagName('LevelOne');//按照名稱取得節(jié)點(diǎn),返回所有節(jié)點(diǎn)的集合,不過(guò)這里這樣讀LevelOne是沒(méi)有意義的….
$LevelOne = $xml->getElementsByTagName('LevelOne')->item(0);//返回第一個(gè)LevelOne節(jié)點(diǎn)中的內(nèi)容
$LevelTwo = $LevelOne->getElementsByTagName('LevelTwo'); //按照名稱取得節(jié)點(diǎn),返回所有LevelTwo
foreach ( $LevelTwo as $Content )//循環(huán)讀出所有LevelTwo,并在循環(huán)里,把LevelTwo用Content表示
{
$LevelThree = $Content->getElementsByTagName('LevelThree');//返回所有LevelThree
foreach ( $LevelThree as $Concert )
{
$name = $Concert->nodeName;//節(jié)點(diǎn)名稱
$value = $Concert->nodeValue;//節(jié)點(diǎn)值
$id = $Concert->getAttribute('id');//”id”屬性值
echo $name.”<br />”;
echo $value.”<br />”;
echo $id.”<br />”;
}
}
?>

如果用$LevelOne = $xml->getElementsByTagName('LevelOne')這樣的方式取得節(jié)點(diǎn),那么,讀取里面的內(nèi)容,需要用foreach 循環(huán),因?yàn)?LevelOne = $xml->getElementsByTagName ('LevelOne')返回的,是一個(gè)集合,并不是一個(gè)具體的節(jié)點(diǎn)―-僅管叫做LevelOne的節(jié)點(diǎn)只有一個(gè)….
如果用$LevelOne = $xml->getElementsByTagName('LevelOne')->item(0)這樣的方式取得節(jié)點(diǎn),那么讀取里面的內(nèi) 容,可以直接$LevelOne->xxxxxx,因?yàn)檫@樣返回的是一個(gè)具體的節(jié)點(diǎn)。

現(xiàn)在提供一種很簡(jiǎn)便的方法用php讀取XML:

XML文件(cy.xml)如下:
復(fù)制代碼 代碼如下:
<?xml version=”1.0″ encoding=”gb2312″?>
<xml>
<site>
<part id=”1″>
<title id=”a”>czbin xml版塊</title>
<describe>xml的相關(guān)文章</describe>
</part>
<part id=”2″>
<title id=”b”>czbin php版塊</title>
<describe>php的相關(guān)文章</describe>
</part>
<part id=”3″>
<title id=”c”>czbin ajax版塊</title>
<describe>ajax的相關(guān)文章</describe>
</part>
</site>
</xml>

php文件(cy.php)如下:
復(fù)制代碼 代碼如下:
<?php
$xml = simplexml_load_file('sxml.xml');
$part = $xml->site->part;
foreach ( $part as $content )
{
echo $content['id'].”<br />”;
echo $content->title.”<br />”;
echo $content->title['id'].”<br />”;
echo $content->describe.”<br />”;
}
?>

cy.php輸出結(jié)果:
1
czbin xml版塊
a
xml的相關(guān)文章
2
czbin php版塊

php的相關(guān)文章
3
czbin ajax版塊
c
ajax的相關(guān)文章

怎么樣?的確很簡(jiǎn)單吧!

php技術(shù)PHP讀取XML值的代碼(推薦),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 97人妻碰视频在线观看 | 亚洲一区电影在线观看 | 色综合伊人色综合网站下载 | 古风H啪肉NP文| 护士日本ⅹxxx丰满hd | 日本熟妇乱人伦A片精品软件 | 99久久无码一区人妻A片竹菊 | 三级全黄a | 精品亚洲国产成AV人片传媒 | 欧式午夜理伦三级在线观看 | 100国产精品人妻无码 | 亚州AV人片一区二区三区99久 | 亚洲精品无码成人AAA片 | 久久久黄色片 | AV色蜜桃一区二区三区 | 777久久人妻少妇嫩草AV蜜桃 | 性春院| 99精品国产免费久久久久久下载 | 7723日本高清完整版在线观看 | 国产精品人妻午夜福利 | 成人毛片18岁女人毛片免费看 | 国产亚洲精品久久孕妇呦呦你懂 | a在线观看免费视频 | 色欲人妻无码AV专区 | 亚洲国产中文在线视频免费 | 欧美高清一区二区三 | 视频一区二区三区蜜桃麻豆 | 日韩亚洲欧美中文高清在线 | 国产精品女上位好爽在线短片 | 三级黄色在线 | 蜜芽TV影院在线视频 | 久久亚洲高清观看 | 日韩亚洲人成在线 | 国产国产成人人免费影院 | 囯产精品久久久久久久久免费蜜桃 | 麻豆精品一卡2卡三卡4卡免费观看 | 99热久久视频只有精品6 | 国内精品免费视频精选在线观看 | 成人免费在线观看 | 久久xxxx | 亚洲精品视频在线观看免费 |