note 82963 added to simplexml.examples

From: Date: Sat, 03 May 2008 16:57:13 +0000
Subject: note 82963 added to simplexml.examples
Groups: php.notes 
Request: Send a blank email to php-notes+get-139031@lists.php.net to get a copy of this message
Missing part because of length restrictions <?php class QXML { ... protected function _toXML( $xmlArray, $elmName='graph', $elmCloseTag="", $level=0) { $xmlString = ""; if(is_array($xmlArray)){ $strXmlAttributes = ""; $key_xml = ""; $keysXmlArray = array_keys($xmlArray); $curLevel = $level + 1; if(in_array(self::attribute,$keysXmlArray)){ if(isset($xmlArray[self::attribute])){ if(is_array($xmlArray[self::attribute])){ foreach($xmlArray[self::attribute] as $xmlArrayKey => $xmlArrayValue) { $strXmlAttributes .= sprintf(' %s="%s"', $xmlArrayKey, addslashes($xmlArrayValue)); } } } unset($xmlArray[self::attribute]); } if(in_array(self::textNode,$keysXmlArray)){ if(isset($xmlArray[self::textNode])){ if($xmlArray[self::textNode]){ $key_xml = $xmlArray[self::textNode]; } if(strlen($ky_xml)){ $key_xml = sprintf("<![CDATA[%s]]>",$key_xml); } else { $key_xml = ""; } } unset($xmlArray[self::textNode]); } $keysXmlArray=array_keys($xmlArray); if($elmCloseTag){ $indent=str_repeat(" ",$level * 5); $xmlString .="\n".$indent. "<".$elmCloseTag.$strXmlAttributes.">". $key_xml; } if(is_array($xmlArray) && count($xmlArray)>0 && count($keysXmlArray)>0) { reset($xmlArray); foreach($keysXmlArray as $key){ $altKey = $altKeyXml = $xmlArray[$key]; $check = false; foreach(array_keys($altKeyXml) as $j=>$p){ if(is_numeric($j)){ $check=true; $xmlString.= $this->_toXML( $altKeyXml[$j], "", $key, $curLevel ); unset($altKeyXml[$j]); } } if($check){ $altKey = $altKeyXml; } if($altKey){ $xmlString .= $this->_toXML($altKey,"",$key,$curLevel); } } } if($elmCloseTag){ $xmlString.= (count($xmlArray)>0?"\n".$indent:""). "</".$elmCloseTag.">"; } } if($elmName) { $xmlString = "<?xml version='1.0' encoding='UTF-8'?>\n$xmlString\n"; } return $xmlString; } ... } ?> ---- Server IP: 212.124.37.9 Probable Submitter: 85.220.155.143 (proxied: 85.220.155.143) ---- Manual Page -- http://www.php.net/manual/en/simplexml.examples.php Edit -- https://master.php.net/note/edit/82963 Del: integrated -- https://master.php.net/note/delete/82963/integrated Del: useless -- https://master.php.net/note/delete/82963/useless Del: bad code -- https://master.php.net/note/delete/82963/bad+code Del: spam -- https://master.php.net/note/delete/82963/spam Del: non-english -- https://master.php.net/note/delete/82963/non-english Del: in docs -- https://master.php.net/note/delete/82963/in+docs Del: other reasons-- https://master.php.net/note/delete/82963 Reject -- https://master.php.net/note/reject/82963 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#139031) next »