函數建立一個新的SimpleXMLElement 對象,然後輸出body 節點的內容:
<?php$note=<<<XML<note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don't forget me this weekend!</ body></note>XML;$xml=new SimpleXMLElement($note);echo $xml->body;?>__construct() 函數建立一個新的SimpleXMLElement 物件。
__construct( data,options,data_is_url,ns,is_prefix );
參數 | 描述 |
---|---|
data | 必需。形式良好的XML 字串或XML 文件的路徑或URL(如果data_is_url 是TRUE)。 |
options | 可選。規定附加的Libxml 參數。透過指定選項為1 或0(TRUE 或FALSE,例如LIBXML_NOBLANKS(1))進行設定。 可能的值: LIBXML_COMPACT - 啟動節點的最佳化配置(可加速應用程式) LIBXML_DTDATTR - 設定預設的DTD 屬性 LIBXML_DTDLOAD - 裝載額外的子集 LIBXML_DTDVALID - 驗證DTD 有效性 LIBXML_NOBLANKS - 刪除空節點 LIBXML_NOCDATA - 將CDATA 設定為文字節點 LIBXML_NOEMPTYTAG - 擴充空標籤(例如<br/> 到<br></br>),僅在DOMDocument->save() 和DOMDocument->saveXML() 函數中有效 LIBXML_NOENT - 替代實體 LIBXML_NOERROR - 不顯示錯誤報告 LIBXML_NONET - 裝載文件時停止存取網絡 LIBXML_NOWARNING - 不顯示警告報告 LIBXML_NOXMLDECL - 當儲存一個文件時放棄XML 聲明 LIBXML_NSCLEAN - 刪除多餘的名稱空間聲明 LIBXML_PARSEHUGE - 設定XML_PARSE_HUGE 標誌,用來放寬解析器的任何強制限制。這將影響諸如文件的最大深度和文字節點大小限制等。 LIBXML_XINCLUDE - 使用XInclude 替代 LIBXML_ERR_ERROR - 取得可修正的錯誤 LIBXML_ERR_FATAL - 取得致命錯誤 LIBXML_ERR_NONE - 不取得錯誤 LIBXML_ERR_WARNING - 取得簡單警告 LIBXML_VERSION - 取得libxml 版本(例如20605 或20617) LIBXML_DOTTED_VERSION - 取得帶點的libxml 版本(例如2.6.5 或2.6.17) |
data_is_url | 可選。如果是TRUE 表示data是XML 文件的路徑或URL,而不是字串資料。預設是FALSE。 |
ns | 可選。規定命名空間前綴或URI。 |
is_prefix | 可選。規定一個布林值。如果ns是前綴則為TRUE,如果ns是URI 則為FALSE。預設是FALSE。 |
傳回值: | 傳回表示data的SimpleXMLElement 物件。 |
---|---|
PHP 版本: | 5.0.1+ |
PHP 更新日誌: | PHP 5.1.2:新增了options和data_is_url參數。 PHP 5.2:新增了ns和is_prefix參數。 |
假設我們有如下的XML 文件,"note.xml":
<?xml version="1.0" encoding="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don 't forget me this weekend!</body></note>
從URL 建立一個SimpleXMLElement 物件:
<?php$xml=new SimpleXMLElement("note.xml",NULL,TRUE);echo $xml->asXML();?>