注明:復制代碼請刪除代碼前的數字
- {
- //獲取模板信息
- $strTempInfo = $this->modelCmsObj->getTemplate('2007');
- $arrTemp = explode("#",$strTempInfo);
- array_shift($arrTemp);
- $arrContents = array();
- foreach($arrTemp as $k=>$v)
- {
- $arrContents[$k]=explode(",",$v);
- }
- //解析為XML文件
- $objDom = new DOMDocument("1.0");
- header("Content-Type: text/plain");
- //添加元素和文本節點
- $root = $objDom->createElement("recommend");
- $objDom->appendChild($root);
- foreach($arrContents as $k=>$v)
- {
- $item = $objDom->createElement("entry");
- $root->appendChild($item);
- $nextitem1 = $objDom->createElement("simgurl");
- $nextitem2 = $objDom->createElement("imgurl");
- $nextitem3 = $objDom->createElement("fileurl");
- $item->appendChild($nextitem1);
- $item->appendChild($nextitem2);
- $item->appendChild($nextitem3);
- $text1 = $objDom->createTextNode($v[0]);
- $text = $objDom->createTextNode($v[1]);
- $text2 = $objDom->createTextNode($v[2]);
- $nextitem2->appendChild($text1);
- $nextitem3->appendChild($text2);
- $nextitem1->appendChild($text);
- }
- echo $objDom->saveXML();
- }
- <?PHP
- $string = <<<XML//聲明XML文檔
- <?XML version='1.0'?>
- <document>
- <title>Forty What?</title>
- <from>Joe</from>
- <to>Jane</to>
- <body>
- I know that's the answer -- but what's the question?
- </body>
- </document>
- XML;
- $XML = simpleXML_load_string($string);
- var_dump($XML);
- ?>
- This script will display:
- SimpleXMLElement Object
- (
- [title] => Forty What?
- [from] => Joe
- [to] => Jane
- [body] =>
- I know that's the answer -- but what's the question?
- )
如果想把XML轉換為數組,先轉換為字符串含有鍵值的字符串,然後再進行循環就可以成為數組了,
- /**
- * XML轉換為數組
- * @param unknown_type $XML
- */
- private function XML_to_array($XML)
- {
- $array = (array)(simpleXML_load_string($XML,'SimpleXMLElement', LIBXML_NOCDATA));
- foreach ($array as $key=>$item){
- $array[$key] = $this->struct_to_array((array)$item);
- }
- return $array;
- }
- private function struct_to_array($item) {
- if(!is_string($item)) {
- $item = (array)$item;
- foreach ($item as $key=>$val){
- $item[$key] = self::struct_to_array($val);
- }
- }
- return $item;
- }