PHP 상용 조작 클래스 의 통신 데이터 패 키 징 클래스 구현

머리말
본 고 는 주로 PHP 상용 조작 류 의 통신 데이터 패 키 징 류 실현 에 관 한 내용 을 소개 하고 참고 학습 을 제공 합 니 다.다음은 더 이상 말 하지 않 고 상세 한 소 개 를 살 펴 보 겠 습 니 다.
필요 성
B/S 구조 에서 든 C/S 구조 에서 든 양쪽 의 데이터 통신(주:이곳 의 통신 은 네트워크 요청 과 답장 작업 을 말 합 니 다)은 피 할 수 없습니다.데이터 가 없 으 면 내용 이 없고 내용 이 없 으 며 무슨 의미 가 있 습 니까?)
일반적으로 C/S 구조 통신 집행 절 차 는 다음 과 같다.

B/S 구조 통신 집행 절 차 는 다음 과 같다.

선택 하 다.
데이터 통신 이 불가피 한 만큼 어떤 통신 방식 을 선택해 야 할 까?현재 서버 와 클 라 이언 트 가 데이터 전송 과 상호작용 을 하 는 방식 은 주로 URL,XML,JSON 세 가지 방식 이 있다.
URL 방식 은 가장 자주 사용 되 고 가장 직접적 이 며 보통 GET 방법 에 사 용 됩 니 다.사실은 POST 중의 Form 폼 은 실질 적 으로 URL 방식 이 라 고 생각 합 니 다.그러나 이런 전송 방식 은 데이터 가 유한 하고 규범화 되 지 않 으 며 간단 한 장면 에 만 적합 합 니 다.XML 과 JSON 은 실질 적 으로 데이터 에 대한 묘사 이다.복잡 한 데이터 에 대해 분할,포장,규범화 등 일련의 처 리 를 하고 데이터 전송 과 해석 을 편리 하 게 하 는 것 이 목적 이다.상대 적 으로 JSON 은 XML 보다 가 볍 지만 더욱 유연 하고 강하 다.예 를 들 어 상기 두 가지 방식 으로 나의 개인 정 보 를 다음 과 같이 나타 낸다.

 JSON:
 {"name":"entner","age":21,"gender":" "}
 
 XML:
 <ROOT>
  <name>entner</name>
  <age>21</age>
  <gender> </gender>
 </ROOT>
관심 있 는 독 자 는 뒤의 참고 링크 를 참고 하여 매우 상세 하 게 쓸 수 있다.
어떻게 포장 합 니까?
위 에서 말 했 듯 이 XML 과 JSON 은 현재 주류 의 통신 데이터 형식 으로 어떻게 포장 하고 활용 하 는 지 에 대해 이야기 하 겠 습 니 다.
만약 에 우리 가 배경 에서 데이터베이스 서버 를 조작 하여 배열 데 이 터 를 얻 으 면 배열 이 JSon 으로 전환 하 는 데 json 만 필요 합 니 다.encode 함수 면 충분 합 니 다.자동 으로 재 귀적 으로 검 측 됩 니 다.배열 이 XML 로 전환 하 는 데 있어 서 는 엄격하게 형식 에 따라 코드 와 주석 을 구체 적 으로 봐 야 합 니 다.
Source Code

<?php
/**
 * TODO:Json      
 * Author:entner
 * time: 2017-5-8
 * version:1.0
 * ready:
      :int $code
      :string $message
      :array $data
      :array $result
  

 function: 
  show             
  jsonEncode   Json      
  xmlToJson   xml      
  xmlEncode      xmlToJson

 */
Class Json{

 const JSON = "json";

/**
  *           
  *@param inter code    
  *@param char message     
  *@param array data     
  *@param string type     
  *return string
 */ 

 public function show($code,$message,$data=array(),$type = self::JSON){
  /*           */
  if(!is_numeric($code)){
   exit();
  }

  $result = array(
   'code'=>$code,
   'message'=>$message,
   'data'=>$data
   );

  /*                  ,  Json   */
  $type = isset($_GET['format'])? $_GET['format']:self::JSON;

  if($type == 'xml'){
   $this->xmlEnCode($code,$message,$data);
   exit; //           ,            
  }else if($type == 'json'){
   $this->jsonEncode($code,$message,$data);
   exit ;
  }else if($type == 'array'){
   var_dump($result);
   exit;
  }else{
   //             http/ftp/
  }

 }


/**
  *  Json      
  *@param inter code    
  *@param char message     
  *@param array data     
  *return string
 */ 
 public function jsonEnCode($code,$message,$data=array()){
  if(!is_numeric($code)){
   exit();
  }
  $result = array(
   'code'=>$code,
   'message'=>$message,
   'data'=>$data
   );
  echo json_encode($result); //json_encode           
  return true;
 }

 /**
  *  XML      
  *@param inter code    
  *@param char message     
  *@param array data     
  *return string
 */ 
 public function xmlEnCode($code,$message,$data=array()){
  if(!is_numeric($code)){
   exit();
  }
  $result = array(
   'code'=>$code,
   'message'=>$message,
   'data'=>$data
   );

  /*   xml     */
  
  
  /*               XML   */
  header("Content-type:text/xml");
  $xml = "<?xml version = '1.0' encoding = 'UTF-8'?>
"; $xml .= "<root>
"; /* XML , . */ $xml .= self::xmlToJson($result); /* xmlToJson */ $xml .= "</root>"; echo $xml; } /** * XML *@param inter code *@param char message *@param array data *return string */ public static function xmlToJson($data){ $xml = $attr = ""; foreach($data as $k => $v){ /*XML , , , */ if(is_numeric($k)){ $attr = " id = '{$k}' "; $k = "item"; $xml .="<{$k}{$attr}>
"; /* , , , , $xml , */ $xml .=is_array($v)?self::xmlToJson($v):$v; $xml .="</{$k}>
"; }else{ $xml .="<{$k}>
"; $xml .=is_array($v)?self::xmlToJson($v):$v; $xml .="</{$k}>
"; } } return $xml; } } $data = array( 'name'=>'entner', 'type'=>array( 0=>'a', 1=>'b' ) ); $try = new Json(); $try->xmlEnCode(200,'success',$data);
총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 셔 서 저희 에 대한 지지 에 감 사 드 립 니 다.
참조 링크
1、 PHP 와 모 바 일 앱 개발 즉 API 인터페이스 개발
2、 C/S B/S 및 WEB 작업 원리
3、 비교 분석 json 및 XML

좋은 웹페이지 즐겨찾기