濮阳杆衣贸易有限公司

主頁 > 知識庫 > PHP封裝XML和JSON格式數(shù)據(jù)接口操作示例

PHP封裝XML和JSON格式數(shù)據(jù)接口操作示例

熱門標簽:臨沂智能電銷機器人軟件 銀川ai電話機器人 安陽自動外呼系統(tǒng)價格是多少 地圖標注風向標 上海公司外呼系統(tǒng)線路 浙江外呼電話系統(tǒng)軟件 十堰ai電話機器人效果怎么樣 電梯外呼線路板維修視頻 芒果電銷機器人

本文實例講述了PHP封裝XML和JSON格式數(shù)據(jù)接口操作。分享給大家供大家參考,具體如下:

使用PHP開發(fā)app后端的接口時,我們需要返回數(shù)據(jù),最常用的就是XML和JSON格式的數(shù)據(jù),那么樣返回呢?

1.JSON

json數(shù)據(jù)是最容制造的,只要使用php自帶的json_encode()函數(shù)就可以簡單的制作出json數(shù)據(jù)了

2.XML

xml數(shù)據(jù)就要復雜一點了,讓我們看一下xml數(shù)據(jù)的格式

那么怎樣構(gòu)造呢?

3.制作生產(chǎn)接口數(shù)據(jù)的類

?php
//定義生成接口數(shù)據(jù)類
class Api
{
  /*
   * 生成json數(shù)據(jù)格式
   * @param integer $code 狀態(tài)碼
   * @param string $message 提示信息
   * $param array $data 數(shù)據(jù)
   * return string
   */
   public static function json($code, $message = '', $data = array())
   {
     //如果狀態(tài)碼不是數(shù)字就返回空
     if(!is_numeric($code)) {
       return '';
     }
     //構(gòu)造返回數(shù)據(jù)
     $result = array(
       'code' = > $code,
       'message' => $message,
       'data' => $data
     );
     return json_encode($result);
   }
  /*
   * 生成xml數(shù)據(jù)格式
   * @param integer $code 狀態(tài)碼
   * @param string $message 提示信息
   * @param array $data 數(shù)據(jù)
   * return string
   */
   public static function xml($code, $message = '', $data = array())
   {
     if(!is_numeric($code)) {
       return '';
     }
     $result = array(
       'code' => $code,
       'message' => $message,
       'data' => $data
     );
     //構(gòu)造xml數(shù)據(jù)
     //使返回的數(shù)據(jù)以xml格式顯示
     header("Content-Type:text/xml");
     //開始拼xml數(shù)據(jù)
     $xml = "?xml version='1.0' encoding='UTF-8'?>";
     //根節(jié)點
     $xml .= "root>";
     //創(chuàng)建一個額外函數(shù)來構(gòu)造
     $xml .= self::xmlToEncode($result);
     $xml .= "/root>";
     return $xml;
   }
   //構(gòu)造xml數(shù)據(jù)函數(shù)
   public static function xmlToEncode($data)
   {
     $xml = "";
     $attr = "";
     foreach($data as $key => $value)
     {
       //如果傳遞的數(shù)組是沒有鍵值的話,0>,1>這種類型的節(jié)點是不合法的,所有就要判斷了,如果是數(shù)字就這樣item id='0'>顯示
       if(is_numeric($key)) {
         $attr = "id = '{$key}'";
         $key = "item";
       }
       //如果是數(shù)字就加上$attr
       $xml .= "{$key}{$attr}>";
       //如果value是數(shù)組就進行遞歸
       $xml .= is_array($value) ? self::xmlToEncode($value) : $value;
       $xml .= "/{$key}>";
     }
     return $xml;
   }
}
//下面就來測試一下吧
$data = array(
  'id' => 1,
  'name' => 'zjp',
  'content' => array(
    'sex' => '男',
    'age' => '24',
    'num' => array(1,3,5,7,9)
  )
);
$xml = Api::xml(200, "返回數(shù)據(jù)成功", $data);
$json = Api::json(200, "返回數(shù)據(jù)成功", $data);
?>

xml格式數(shù)據(jù):上面那張介紹xml格式

json格式數(shù)據(jù):

PS:本站還提供了如下XML與JSON相關(guān)工具,方便大家參考使用:

在線XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson

php代碼在線格式化美化工具:
http://tools.jb51.net/code/phpformat

在線XML格式化/壓縮工具:
http://tools.jb51.net/code/xmlformat

json代碼在線格式化/美化/壓縮/編輯/轉(zhuǎn)換工具:
http://tools.jb51.net/code/jsoncodeformat

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP中json格式數(shù)據(jù)操作技巧匯總》、《PHP針對XML文件操作技巧總結(jié)》、《PHP基本語法入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》

希望本文所述對大家PHP程序設(shè)計有所幫助。

您可能感興趣的文章:
  • PHP調(diào)用全國天氣預報數(shù)據(jù)接口查詢天氣示例
  • php的api數(shù)據(jù)接口書寫實例(推薦)
  • PHP實現(xiàn)chrome表單請求數(shù)據(jù)轉(zhuǎn)換為接口使用的json數(shù)據(jù)
  • PHP實現(xiàn)騰訊短網(wǎng)址生成api接口實例
  • PHP接入支付寶接口失效流程詳解
  • PHP語言對接抖音快手小紅書視頻/圖片去水印API接口源碼
  • PHP預定義接口——Iterator用法示例
  • php與阿里云短信接口接入操作案例分析
  • PHP開發(fā)API接口簽名生成及驗證操作示例
  • PHP接口類(interface)的定義、特點和應(yīng)用示例
  • 微信小程序開發(fā)之獲取用戶手機號碼(php接口解密)
  • PHP 對象接口簡單實現(xiàn)方法示例
  • PHP開發(fā)api接口安全驗證操作實例詳解
  • 如何用PHP編寫簡單的api數(shù)據(jù)接口

標簽:遂寧 寧夏 荊門 徐州 武威 吐魯番 常州 遵義

巨人網(wǎng)絡(luò)通訊聲明:本文標題《PHP封裝XML和JSON格式數(shù)據(jù)接口操作示例》,本文關(guān)鍵詞  PHP,封裝,XML,和,JSON,格式,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP封裝XML和JSON格式數(shù)據(jù)接口操作示例》相關(guān)的同類信息!
  • 本頁收集關(guān)于PHP封裝XML和JSON格式數(shù)據(jù)接口操作示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    乌拉特中旗| 开封市| 吉首市| 周至县| 同德县| 临沧市| 深圳市| 益阳市| 五莲县| 财经| 桃源县| 沁水县| 纳雍县| 土默特右旗| 富蕴县| 蒙城县| 黄石市| 陇西县| 峨边| 新巴尔虎左旗| 广南县| 墨江| 杂多县| 肃宁县| 西藏| 娄烦县| 苗栗县| 杭锦后旗| 宝清县| 建湖县| 车致| 米易县| 双牌县| 大名县| 忻城县| 讷河市| 丹寨县| 房山区| 焦作市| 西华县| 柘城县|