怎么用php解析xml文件_PHP教程
推薦:PHP錯(cuò)誤:Forbidden You don't have permission to access / on this server今天在測(cè)試一個(gè)php程序的時(shí)候,發(fā)現(xiàn)這個(gè)問題: Forbidden You don't have permission to access / on this server. 開始的時(shí)候我是用http://localhost/test.php進(jìn)行的測(cè)試,沒有發(fā)現(xiàn)問題,后來要在內(nèi)網(wǎng)測(cè)試一下就要用IP地址進(jìn)行那個(gè)訪問了,如:http://10.10.50.195/tes
DOMElement
DOMElement DOMDocument::createElement ( string $name [, string $value ] )
創(chuàng)建節(jié)點(diǎn)元素
String $name:節(jié)點(diǎn)名
String $value:節(jié)點(diǎn)的值
8、 添加節(jié)點(diǎn)
•DOMNode DOMNode::appendChild ( DOMNode $newnode )
添加子節(jié)點(diǎn)
DOMNode $newnode:新節(jié)點(diǎn)
在dom操作中,增刪改操作必須依賴于父節(jié)點(diǎn)
9、 保存
•string DOMDocument::saveXML
保存至某個(gè)字符串中
•int DOMDocument::save ( string $filename )
保存至某個(gè)文件中
String $filename:文件名
10、 刪除節(jié)點(diǎn)
•DOMNode DOMNode::removeChild ( DOMNode $oldnode )
刪除節(jié)點(diǎn)
DOMNode $oldnode:要?jiǎng)h除的節(jié)點(diǎn)
11、 更新節(jié)點(diǎn)
•DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
DOMNode $newnode:新節(jié)點(diǎn)
DOMNode $oldnode:原節(jié)點(diǎn)
12、 添加屬性
•DOMAttr DOMElement::setAttribute( string $name , string $value )
string $name :屬性名
string $value :屬性值
13、 修改屬性
DOMAttr DOMElement::setAttribute( string $name , string $value )
string $name :屬性名
string $value :屬性值
14、 刪除屬性
•bool DOMElement::removeAttribute ( string $name )
string $name:要?jiǎng)h除的屬性名稱
15、 獲取屬性
•string DOMElement::getAttribute ( string $name )
string $name:要獲取的屬性值的屬性名
DOMDocument還是PHP5后推出的DOM擴(kuò)展的一部分,可用來建立或解析html/xml,目前只支持utf-8編碼。
SimpleXML
SimpleXML是PHP5后提供的一套簡(jiǎn)單易用的xml工具集,可以把xml轉(zhuǎn)換成方便處理的對(duì)象,也可以組織生成xml數(shù)據(jù)。不過它不適用于包含namespace的xml,而且要保證xml格式完整(well-formed)。它提供了三個(gè)方法:simplexml_import_dom、simplexml_load_file、simplexml_load_string,函數(shù)名很直觀地說明了函數(shù)的作用。三個(gè)函數(shù)都返回SimpleXMLElement對(duì)象,數(shù)據(jù)的讀取/添加都是通過SimpleXMLElement操作
SimpleXML的優(yōu)點(diǎn)是開發(fā)簡(jiǎn)單,缺點(diǎn)是它會(huì)將整個(gè)xml載入內(nèi)存后再進(jìn)行處理,所以在解析超多內(nèi)容的xml文檔時(shí)可能會(huì)力不從心。如果是讀取小文件,而且xml中也不包含namespace,那SimpleXML是很好的選擇。
XMLReader
XMLReader也是PHP5之后的擴(kuò)展(5.1后默認(rèn)安裝),它就像游標(biāo)一樣在文檔流中移動(dòng),并在每個(gè)節(jié)點(diǎn)處停下來,操作起來很靈活。它提供了對(duì)輸入的快速和非緩存的流式訪問,可以讀取流或文檔,使用戶從中提取數(shù)據(jù),并跳過對(duì)應(yīng)用程序沒有意義的記錄。
以一個(gè)利用google天氣api獲取信息的例子展示下XMLReader的使用,這里也只涉及到一小部分函數(shù),更多還請(qǐng)參考官方文檔。
XMLReader和XML Parser類似,都是邊讀邊操作,較大的差異在于SAX模型是一個(gè)“推送”模型,其中分析器將事件推到應(yīng)用程序,在每次讀取新節(jié)點(diǎn)時(shí)通知應(yīng)用程序,而使用XmlReader的應(yīng)用程序可以隨意從讀取器提取節(jié)點(diǎn),可控性更好。
由于XMLReader基于libxml,所以有些函數(shù)要參考文檔看看是否適用于你的libxml版本。
分享:如何批量替換相對(duì)地址為絕對(duì)地址(利用bat批處理實(shí)現(xiàn))你的url鏈接是相對(duì)路徑你想把他批量替換成絕對(duì)路徑該怎么做呢?下面與大家分享下具體的實(shí)現(xiàn)思路及代碼,只需點(diǎn)擊bat文件,全部頁面里的相對(duì)地址就會(huì)變成絕對(duì)地址了
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁面代碼執(zhí)行時(shí)間
- PHP中獎(jiǎng)概率的抽獎(jiǎng)算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對(duì)圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問控制的和運(yùn)算符優(yōu)先級(jí)介紹
- 關(guān)于PHP語言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國(guó)語言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
- 相關(guān)鏈接:
- 教程說明:
PHP教程-怎么用php解析xml文件。