Heim >Backend-Entwicklung >PHP-Tutorial >php 数组 xml json xml相互转换的方法

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

WBOY
WBOYOriginal
2016-07-25 09:10:35865Durchsuche
首先,来看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);



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn