Maison >développement back-end >tutoriel php >php 数组 xml json xml相互转换的方法

php 数组 xml json xml相互转换的方法

WBOY
WBOYoriginal
2016-07-25 09:10:35859parcourir
首先,来看array->xml。 $value) {

首先,来看array->xml。

function ia2xml($array) { $xml=""; foreach ($array as $key=>$value) { if (is_array($value)) { $xml.="".ia2xml($value)."$key>"; } else { $xml.="".$value."$key>"; } } return $xml; }

return simplexml_load_string("".ia2xml($array)."$tag>"); }

$test['type']='lunch'; $test['time']='12:30'; $test['menu']=array('entree'=>'salad', 'maincourse'=>'steak');

echo array2xml($test,"meal")->asXML(); ?>

其次,xml->array。 方法一: function xml2phpArray($xml,$arr){ $iter = 0; foreach($xml->children() as $b){ $a = $b->getName(); if(!$b->children()){ $arr[$a] = trim($b[0]); }else{ $arr[$a][$iter] = array(); $arr[$a][$iter] = xml2phpArray($b,$arr[$a][$iter]); $iter++; } } return $arr; }

$xml = George John Reminder Don't forget the meeting! ccceee XML;

print_r(xml2phpArray(simplexml_load_string ( $xml ),array()));

方法二: function XML2Array ( $xml , $recursive = false ) { if ( ! $recursive ) { $array = simplexml_load_string ( $xml ) ; } else { $array = $xml ; } $newArray = array () ; $array = ( array ) $array ; foreach ( $array as $key => $value ) { $value = ( array ) $value ; if ( isset ( $value [ 0 ] ) ) { $newArray [ $key ] = trim ( $value [ 0 ] ) ; } else { $newArray [ $key ] = XML2Array ( $value , true ) ; } } return $newArray ; }

$xml = George John Reminder Don't forget the meeting! ccceee XML;

print_r(XML2Array($xml));

来看json->array。 json_decode($json,true);//第二个参数为true时 即为array $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; var_dump(json_decode($json)); var_dump(json_decode($json, true));

最后,来看array->json json_encode 数组->json $arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); echo json_encode($arr);



Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn