\n"; $xml .= "\n"; $xml .= "\n"; $xml .= " $row) { foreach ($row as $attribute_name => $value) { if(is_integer($attribute_name)) continue; $xml .= $attribute_name." CDATA #IMPLIED\n"; } break; } } $xml .= ">\n]>"; $xml .= "\n\n"; if ($allname && is_array($arr) && count($arr) > 1) { $xml .= "\n"; } if (is_array($arr)) { foreach ($arr as $index => $row) { $xml .= " $value) { if(is_integer($key)) continue; if($key=="referredby" || $key=="website" || $key=="code" || $key=="branch") continue; if($primarykey=="facilityid" && ($key=="distributorid" || $key=="entitytypeid")) continue; if ($key == $primarykey) $tmpkey = "key"; elseif ($key == $primaryvalue) $tmpkey = "value"; elseif ($key == "parent") $tmpkey = "parentid"; else $tmpkey = $key; $val = str_replace("&", "&", $value); $val = str_replace("\"", """, $val); $xml .= $tmpkey."=\"".$val."\" "; } $val = $row[$primaryvalue]; $val = str_replace("&", "&", $val); $val = str_replace("\"", """, $val); $xml .= "/>\n"; } } $xml .= "\n"; return $xml; } function xml($array,$level=0) { for($i=0;$i<$level;$i++) $spaces.=" "; foreach ($array as $key => $value) { $xml.="$spaces<$key>"; if (is_array($value)) $xml.="\n".xml($value,$level+1).$spaces; else $xml.=$value; $xml.="\n"; } return $xml; } function parsexml($string,$id=0) { $array = array(); $startpos=0; while (strlen($startpos)>0) { $startofname=strpos($string,"<",$startpos); $startofxmlname=strpos($string,"0&&strlen($startofxmlname)>0) { $startofname=strpos($string,"<",$startofname+1); } elseif (strlen($startofname)==0) { $startpos=null; continue; } if (strlen($startofname)>0) { $endofname=strpos($string,">",$startofname); } else { $startpos=null; continue; } if (!$endofname) { return "ERROR: INCOMPLETE VARIABLE"; exit; } $name=substr($string,($startofname+1),($endofname-$startofname)-1); $startofvalue=$endofname+1; $endofnamevalue=strpos($string,"",$startofname); if (strlen($endofnamevalue)==0) { return "ERROR: INCOMPLETE VALUE"; exit; } $endofvalue=$endofnamevalue-1; $value=substr($string,$startofvalue,($endofvalue-$startofvalue)+1); if (strpos($value,"<")) $array[$name]=parsexml($value,$id); else $array[$name]=trim($value); $startpos=$endofnamevalue+strlen(""); } return $array; }