>  기사  >  백엔드 개발  >  요청된 데이터를 json 또는 xml 형식으로 반환하는 PHP 메서드

요청된 데이터를 json 또는 xml 형식으로 반환하는 PHP 메서드

不言
不言원래의
2018-05-31 15:22:221755검색

이 글에서는 주로 PHP가 json 또는 xml 형식으로 요청 데이터를 반환하는 방법을 소개합니다. 이는 특정 참조 값을 가지고 있습니다. 이제는 도움이 필요한 친구들이 참조할 수 있습니다.

웹 페이지이든 모바일 터미널이든. , 서버 요청 데이터에 제출해야 합니다. PHP 서버로서 표준 데이터를 반환하는 방법은 무엇입니까?

요즘 주류 데이터 형식은 json과 xml에 불과합니다. PHP를 사용하여 이 두 형식의 데이터를 반환하는 클래스를 캡슐화하는 방법을 살펴보겠습니다.

먼저 응답 클래스를 정의해 보겠습니다

class response{
}

xml 형식으로 데이터를 반환하려면

이 방법을 사용하려면 데이터에 배열이 있으면 재귀적으로 탐색해야 합니다. 특별한 경우도 있습니다. 배열의 첨자가 숫자인 경우 XML 형식에서 오류를 보고합니다.

//按json格式返回数据
public static function json($code,$message,$data=array()){
 if(!is_numeric($code)){
  return '';
 }
 $result=array(
  "code"=>$code,
  "message"=>$message,
  "data"=>$data
 );
 echo json_encode($result);
}

이런 경우 show 메소드를 호출하면 네 번째 매개변수는 반환하려는 데이터 형식입니다. 기본값은 json 형식입니다.

다시 한번 show 메소드를 호출해 보겠습니다. 그리고 xml 형식으로 데이터를 반환합니다:

//按xml格式返回数据
 public static function xmlEncode($code,$message,$data=array()){
  if(!is_numeric($code)){
   return '';
  }
  $result=array(
   "code"=>$code,
   "message"=>$message,
   "data"=>$data
  );
  header("Content-Type:text/xml");
  $xml="<?xml version=&#39;1.0&#39; encoding=&#39;UTF-8&#39;?>";
  $xml.="<root>";
  $xml.=self::xmlToEncode($result);
  $xml.="</root>";
  echo $xml;
 }
 public static function xmlToEncode($data){
  $xml=$attr=&#39;&#39;;
  foreach($data as $key=>$value){
   if(is_numeric($key)){
    $attr="id=&#39;{$key}&#39;";
    $key="item";
   }
   $xml.="<{$key} {$attr}>";
   $xml.=is_array($value)?self::xmlToEncode($value):$value;
   $xml.="</{$key}>";
  }
  return $xml;
 }
}

효과는 다음과 같습니다:

이러한 방식으로 이 두 가지 데이터 형식의 캡슐화를 완료했으며 이 두 가지 형식을 반환할 수 있습니다. 마음대로 데이터

관련 권장 사항:

CGI 모드에서 PHP를 설치할 때 가능한 공격 및 솔루션

위 내용은 요청된 데이터를 json 또는 xml 형식으로 반환하는 PHP 메서드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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