中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在PHP中生成一個json和xml類型的接口

發布時間:2021-03-19 15:44:18 來源:億速云 閱讀:179 作者:Leah 欄目:開發技術

怎么在PHP中生成一個json和xml類型的接口?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

php生成接口通信數據

/**
 * 生成接口數據格式
 */
class Response{
  /**
   * [show 按綜合方式輸出數據]
   * @param [int] $code    [狀態碼]
   * @param [string] $message [提示信息]
   * @param array $data  [數據]
   * @param [string] $type [類型]
   * @return [string]    [返回值]
   */
  public static function show($code, $message, $data = array(),$type = ''){
    if(!is_numeric($code)){
      return '';
    }
    $result = array(
      'code' => $code,
      'message' => $message,
      'data' => $data
    );
    if($type == 'json'){
      return self::json($code, $message, $data);
    }elseif($type == 'xml'){
      return self::xml($code, $message, $data);
    }else{
      //TODO
    }
  }
  /**
   * [json 按json方式輸出數據]
   * @param [int] $code    [狀態碼]
   * @param [string] $message [提示信息]
   * @param [array] $data  [數據]
   * @return [string]     [返回值]
   */
  public static function json($code, $message, $data = array()){
    if(!is_numeric($code)){
      return '';
    }
    $result = array(
      'code' => $code,
      'message' => $message,
      'data' => $data
    );
    $result = json_encode($result);
    return $result;
  }
 
  /**
   * [xml 按xml格式生成數據]
   * @param [int] $code    [狀態碼]
   * @param [string] $message [提示信息]
   * @param array $data   [數據]
   * @return [string]     [返回值]
   */
  public static function xml($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='1.0' encoding='UTF-8'?>\n";
    $xml .= "<root>\n";
    $xml .= self::xmlToEncode($data);
    $xml .= "</root>";
    return $xml;
  }
 
  public static function xmlToEncode($data){
    $xml = '';
    foreach($data as $key => $value){
      if(is_numeric($key)){
        $attr = "id='{$key}'";
        $key = "item";
      }
      $xml .= "<{$key} {$attr}>\n";
      $xml .= is_array($value) ? self::xmlToEncode($value) : "{$value}\n";
      $xml .= "</{$key}>\n";
    }
    return $xml;
  }
}
 
//測試
$grade = array("score" => array(70, 95, 70.0, 60, "70"), "name" => array("Zhang San", "Li Si", "Wang Wu", "Zhao Liu", "TianQi"));
$response = new Response();
$result = $response :: show(200,'success',$grade,'json');
print_r($result);

看完上述內容,你們掌握怎么在PHP中生成一個json和xml類型的接口的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

忻州市| 诸暨市| 广西| 遂川县| 南木林县| 如皋市| 林甸县| 库尔勒市| 北京市| 郁南县| 台山市| 全州县| 阳朔县| 沈丘县| 依兰县| 和平区| 贡嘎县| 江陵县| 买车| 临桂县| 霍林郭勒市| 北票市| 息烽县| 涿鹿县| 吉安县| 得荣县| 湟中县| 朝阳县| 舟山市| 沂水县| 澄迈县| 东明县| 郓城县| 大安市| 元谋县| 项城市| 巫山县| 卓尼县| 汉阴县| 拉孜县| 砚山县|