直接上程式碼
$path = './data.xml'; $xml = simplexml_load_file($path); foreach($xml->children() as $child){ echo $child }
simplexml_load_file() 函式把 XML 文件載入物件中。
| file | 必需。規定要使用的 XML 文件。 |
| class | 可選。規定新物件的 class。 |
| options | 可選。規定附加的 Libxml 引數。 |
| ns | 可選。 |
| is_prefix | 可選。 |
返回一個SimpleXMLElement 物件如果是字串怎麼辦?
$xml=simplexml_load_string($note); print_r($xml)
simplexml_load_string() 函式轉換形式良好的 XML 字串為 SimpleXMLElement 物件。
| data | 必需。規定形式良好的 XML 字串。 |
| classname | 可選。規定新物件的 class。 |
返回一個SimpleXMLElement 物件
微信的xml之類的可以新增選項 將 CDATA 合併為文字節點simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);
我要的是陣列,可不是物件啊
SimpleXMLElement 物件轉換陣列,直接強轉即可
$array = (array)$SimpleXMLElement;
多維陣列遞迴轉換XML
// 建立新的simpleXML例項,注入記憶體,確定根節點 $xml = new SimpleXMLElement('<root/>'); //陣列轉XML function arrayToXml($obj, $array) { foreach ($array as $k => $v) { if(is_numeric($k)) $k = 'item' . $k; if(is_array($v)){ $node = $obj->addChild($k); arrayToXml($node, $v); }else{ $obj->addChild($k, htmlspecialchars($v)); } } }
本作品採用《CC 協議》,轉載必須註明作者和本文連結