在開發過程中,經常會遇到需要將數組轉換為xml格式的需求,此時可以使用thinkphp框架的xml類庫來實現。
首先,我們需要創建一個數組:
$data = array( 'name' => '張三', 'age' => '25', 'sex' => '男' );
然后,我們可以通過以下代碼將其轉換為XML格式:
$xml = new DOMDocument('1.0', 'utf-8'); $root = $xml->createElement('data'); $xml->appendChild($root); array_to_xml($data, $root); function array_to_xml($data, $root) { foreach($data as $key => $value) { if(is_array($value)) { $node = $root->appendChild($xml->createElement($key)); array_to_xml($value, $node); } else { $node = $root->appendChild($xml->createElement($key, $value)); } } }
這里用到了DOMDocument類和createElement()方法,首先創建了一個根節點,并通過循環遍歷數組中的數據,創建節點和元素,并將元素添加到節點中。
如果數組中的值還是數組,就需要遞歸調用自身,以創建相應的節點和元素。
立即學習“PHP免費學習筆記(深入)”;
最后,可以使用以下代碼將XML格式的字符串輸出:
echo $xml->saveXML();
這樣,就可以輕松地將數組轉換為XML格式了。當然,如果需要將XML格式的字符串轉換回數組,還可以使用ThinkPHP框架提供的Xml::toArray()方法。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END