>백엔드 개발 >PHP 튜토리얼 >PHP 배열을 XML로 재귀적으로 변환하기 위한 코드 공유

PHP 배열을 XML로 재귀적으로 변환하기 위한 코드 공유

高洛峰
高洛峰원래의
2016-12-22 15:07:15981검색

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(&#39;a&#39;=>&#39;aaa&#39;,&#39;b&#39;=>array(&#39;c&#39;=>&#39;1234&#39; , &#39;d&#39; => "asdfasdf"));
echo arr2xml($arr);

코드 실행 후 결과는 다음과 같습니다.

<xml><a><![CDATA[aaa]]></a><b><c><![CDATA[1234]]></c><d><![CDATA[asdfasdf]]></d></b></xml>

위 내용은 이 글의 전체 내용입니다. 좋아요.


PHP 배열을 xml로 재귀적으로 변환하는 것과 관련된 더 많은 코드 공유를 보려면 PHP 중국어 웹사이트에 주목하세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.