PHP에서는 배열을 xml로 변환해야 하는 경우가 흔하고 구현 방법도 많습니다. Baidu는 다양한 구현 방법을 모색했지만 기본적으로 일부 구성 요소를 차용했습니다. 다차원 배열을 지원하는 문자열 그룹화 방법을 직접 작성했습니다. 참고만 하시고, 부족한 점이 있으면 언제든지 알려주세요!
/** * 将数组转换为xml * @param array $data 要转换的数组 * @param bool $root 是否要根节点 * @return string xml字符串 * @author Dragondean * @url http://www.cnblogs.com/dragondean */ function arr2xml($data, $root = true){ $str=""; if($root)$str .= "<xml>"; foreach($data as $key => $val){ if(is_array($val)){ $child = arr2xml($val, false); $str .= "<$key>$child</$key>"; }else{ $str.= "<$key><![CDATA[$val]]></$key>"; } } if($root)$str .= "</xml>"; return $str; }
위는 구현 방법입니다. 첫 번째 매개변수는 변환하려는 배열입니다. 두 번째 선택적 매개변수는 기본적으로 b2a0af5a8fd26276da50279a1c63a57a
테스트 코드:
$arr=array('a'=>'aaa','b'=>array('c'=>'1234' , 'd' => "asdfasdf")); echo arr2xml($arr);
코드 실행 후 결과는 다음과 같습니다.
<xml><a><![CDATA[aaa]]></a><b><c><![CDATA[1234]]></c><d><![CDATA[asdfasdf]]></d></b></xml>
위 내용은 이 글의 전체 내용입니다. 좋아요.
PHP 배열을 xml로 재귀적으로 변환하는 것과 관련된 더 많은 코드 공유를 보려면 PHP 중국어 웹사이트에 주목하세요!