PHP讀取XML文件的方法實(shí)例總結(jié)【DOMDocument及simplexml方法】
本文實(shí)例講述了PHP讀取XML文件的方法。分享給大家供大家參考,具體如下:
使用DOMDocument對(duì)象讀取xml
創(chuàng)建一個(gè)DOMDocument對(duì)象
$doc = new DOMDocument();
載入xml文件
$doc->load("book.xml");
獲取標(biāo)簽對(duì)象
$books = $doc->getElementsByTagName("book");
獲取標(biāo)簽的子對(duì)象
$titles = $book->getElementsByTagName("title");
獲取標(biāo)簽的值或?qū)傩?/p>
$title = $titles->item(0)->nodeValue;
實(shí)例1,獲取圖書(shū)列表
book.xml
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book>
<title>PHP和MySQL開(kāi)發(fā)</title>
<author>譚浩強(qiáng)</author>
</book>
<book>
<titile>xml從入門(mén)到精通</titile>
<author>鄭智化</author>
</book>
</bookstore>
load.php
<?php
header("Content-type:text/html;charset=utf8");
$doc = new DOMDocument(); //創(chuàng)建DOMDocument對(duì)象
$doc->load("book.xml"); //打開(kāi)book.xml
$books = $doc->getElementsByTagName("book"); //獲取book標(biāo)簽對(duì)象
foreach ($books as $book){ //遍歷對(duì)象
$titles = $book->getElementsByTagName("title"); //獲取book標(biāo)簽下的title標(biāo)簽
$title = $titles->item(0)->nodeValue; //獲取標(biāo)簽的值
$authors = $book->getElementsByTagName("author");//獲取book標(biāo)簽下的author標(biāo)簽
$author = $authors->item(0)->nodeValue; //獲取標(biāo)簽的值
$item["title"] = $title;
$item["author"] = $author;
$bookinfo[] = $item;
}
var_dump($bookinfo);
實(shí)例2,讀取配置文件
config.xml
<?xml version="1.0" encoding="UTF-8"?> <mysql> <host>127.0.0.1</host> <username>root</username> <password></password> <database>test</database> </mysql>
config.php
<?php
header("Content-type:text/html;charset=utf8");
$doc = new DOMDocument(); //創(chuàng)建DOMDocument對(duì)象
$doc->load("config.xml"); //打開(kāi)config.xml
$mysql = $doc->getElementsByTagName("mysql"); //獲取mysql標(biāo)簽對(duì)象
$host = $mysql->item(0)->getElementsByTagName("host");
$config["host"] = $host->item(0)->nodeValue;
$username = $mysql->item(0)->getElementsByTagName("username");
$config["username"] = $username->item(0)->nodeValue;
$password = $mysql->item(0)->getElementsByTagName("password");
$config["password"] = $password->item(0)->nodeValue;
$database = $mysql->item(0)->getElementsByTagName("database");
$config["database"] = $database->item(0)->nodeValue;
var_dump($config);
使用simplexml方法讀取xml
實(shí)例1,獲取圖書(shū)列表
load.php
<?php
header("Content-type:text/html;charset=utf8");
$books = simplexml_load_file("book.xml");
foreach($books as $book){
$item["title"] = $book->title;
$item["author"] = $book->author;
$booklist[] = $item;
}
var_dump($booklist);
實(shí)例2,讀取配置文件
config.php
<?php
header("Content-type:text/html;charset=utf8");
$mysql = simplexml_load_file("config.xml");
$config['host'] = $mysql->host;
$config['username'] = $mysql->username;
$config['password'] = $mysql->password;
$config['databse'] = $mysql->database;
var_dump($config);
PS:這里再為大家提供幾款關(guān)于xml操作的在線(xiàn)工具供大家參考使用:
在線(xiàn)XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson
在線(xiàn)格式化XML/在線(xiàn)壓縮XML:
http://tools.jb51.net/code/xmlformat
XML在線(xiàn)壓縮/格式化工具:
http://tools.jb51.net/code/xml_format_compress
XML代碼在線(xiàn)格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《PHP針對(duì)XML文件操作技巧總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- PHP使用DOMDocument類(lèi)生成HTML實(shí)例(包含常見(jiàn)標(biāo)簽元素)
- 如何解決php domdocument找不到的問(wèn)題
- PHP中使用DOMDocument來(lái)處理HTML、XML文檔的示例
- PHP創(chuàng)建XML的方法示例【基于DOMDocument類(lèi)及SimpleXMLElement類(lèi)】
- PHP基于DOMDocument解析和生成xml的方法分析
- PHP 中 DOMDocument保存xml時(shí)中文出現(xiàn)亂碼問(wèn)題的解決方案
- php中DOMDocument簡(jiǎn)單用法示例代碼(XML創(chuàng)建、添加、刪除、修改)
- PHP XML操作類(lèi)DOMDocument
- php基于DOMDocument操作頁(yè)面元素實(shí)例
相關(guān)文章
解析php擴(kuò)展php_curl.dll不加載的解決方法
本篇文章是對(duì)php擴(kuò)展php_curl.dll不加載的解決方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
PHP實(shí)現(xiàn)基于回溯法求解迷宮問(wèn)題的方法詳解
這篇文章主要介紹了PHP實(shí)現(xiàn)基于回溯法求解迷宮問(wèn)題的方法,結(jié)合實(shí)例形式詳細(xì)分析了回溯法的原理、實(shí)現(xiàn)步驟與解決迷宮問(wèn)題的相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
php正則表達(dá)式(regar expression)
在編寫(xiě)處理字符串的程序或網(wǎng)頁(yè)時(shí),經(jīng)常會(huì)有查找符合某些復(fù)雜規(guī)則的字符串的需要。正則表達(dá)式就是用于描述這些規(guī)則的語(yǔ)法。2011-09-09
PHP使用trim函數(shù)去除字符串左右空格及特殊字符實(shí)例
這篇文章主要介紹了PHP使用trim函數(shù)去除字符串左右空格及特殊字符的用法,結(jié)合實(shí)例簡(jiǎn)單分析了trim函數(shù)不帶附加參數(shù)去除空格及使用附加參數(shù)去除指定字符的使用技巧,需要的朋友可以參考下2016-01-01
PHP中使用localhost連接Mysql不成功的解決方法
這篇文章主要介紹了PHP中使用localhost連接Mysql不成功的解決方法,但使用127.0.0.1則沒(méi)有問(wèn)題,本文也可以說(shuō)是對(duì)連接MySQL主機(jī)使用127.0.0.1與localhost的區(qū)別的講解,需要的朋友可以參考下2014-08-08
PHP將HTML轉(zhuǎn)換成文本的實(shí)現(xiàn)代碼
這篇文章主要介紹了PHP將HTML轉(zhuǎn)換成文本的實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-01-01
探討php define()函數(shù)及defined()函數(shù)使用詳解
本篇文章是對(duì)php中define()函數(shù)及defined()函數(shù)的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06

