XML是eXtensible Markup Language的缩写。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用,那么一下就是一种PHP 将数组转成指定格式xml的方法,与大家共勉。
#整理xml格式数据
function return_XML(){ $version = '<?xml version="1.0" encoding="UTF-8" ?>,service'; $keys = array('SYS_HEAD'=>array('SourceSysId'=>'a'), 'APP_HEAD'=>array('TranDate'=>'b','Wow'=>'e'), 'BODY'=>array('tenant_id'=>'c','Ka'=>'f'), ); // $keys = array( // 'Aey'=>'a', // 'Bey'=>'b', // 'Cey'=>'c', // 'Dey'=>'d', // 'Eey'=>'e' // ); $data = array( 'a' =>'Hello', 'b' =>'PHPer', 'c' =>'Coder', 'd' =>'Hey', 'e' =>'Wow', 'f' =>'Year', 'g' =>'WHY', ); $result = Xml( $version , $keys , $data ); var_dump( $result ); } #@param $version xml版本 #@param $key 要处理成xml标签 #@param $version 要处理数据 function Xml($version=null,$keys=null,$data=null){ if( !empty($version)){ $versionService = explode(',', $version); $_xml .= $versionService[0].'<'.$versionService[1].'>'; } #整合数据 foreach ($keys as $key => $value ) { if( is_array( $value )){ $_xml .= '<'.$key.'>'; foreach ($value as $keyss => $values) { if(array_key_exists($values, $data )){ $_xml .= '<'.$keyss.'>'. $data[$values].'</'.$keyss.'>'; } } $_xml .= '</'.$key.'>'; }else{ $_xml .= '<'.$key.'>'.$data[ $value ].'</'.$key.'>'; } } if( !empty($version)){ $_xml .= '</'.$versionService[1].'>'; } return $_xml; /* #结果 <?xml version="1.0" encoding="UTF-8" ?> <service> <SYS_HEAD> <SourceSysId>Hello</SourceSysId> <Sdk>Hey</Sdk> </SYS_HEAD> <APP_HEAD> <TranDate>PHPer</TranDate> <Wow>Wow</Wow> </APP_HEAD> <BODY> <tenant_id>Coder</tenant_id> <Ka>Year</Ka> </BODY> </service> <service> <Aey>Hello</Aey> <Bey>PHPer</Bey> <Cey>Coder</Cey> <Dey>Hey</Dey> <Eey>Wow</Eey> </service> */ }
以上就是PHP 将数组转成指定xml格式的方法,希望对小伙伴们有一定的帮助,如果还有什么疑问大家可以关注PHP中文网。
相关推荐:
以上是PHP 将数组转成指定格式xml的详细内容。更多信息请关注PHP中文网其他相关文章!