您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關PHP封裝XML和JSON格式數據接口,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
1.JSON
json數據是最容制造的,只要使用php自帶的json_encode()
函數就可以簡單的制作出json數據了
2.XML
xml數據就要復雜一點了,讓我們看一下xml數據的格式
那么怎樣構造呢?
3.制作生產接口數據的類
<?php //定義生成接口數據類 class Api { /* * 生成json數據格式 * @param integer $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 ); return json_encode($result); } /* * 生成xml數據格式 * @param integer $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 ); //構造xml數據 //使返回的數據以xml格式顯示 header("Content-Type:text/xml"); //開始拼xml數據 $xml = "<?xml version='1.0' encoding='UTF-8'?>"; //根節點 $xml .= "<root>"; //創建一個額外函數來構造 $xml .= self::xmlToEncode($result); $xml .= "</root>"; return $xml; } //構造xml數據函數 public static function xmlToEncode($data) { $xml = ""; $attr = ""; foreach($data as $key => $value) { //如果傳遞的數組是沒有鍵值的話,<0>,<1>這種類型的節點是不合法的,所有就要判斷了,如果是數字就這樣<item id='0'>顯示 if(is_numeric($key)) { $attr = "id = '{$key}'"; $key = "item"; } //如果是數字就加上$attr $xml .= "<{$key}{$attr}>"; //如果value是數組就進行遞歸 $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, "返回數據成功", $data); $json = Api::json(200, "返回數據成功", $data); ?>
xml格式數據:上面那張介紹xml格式
json格式數據:
上述就是小編為大家分享的PHP封裝XML和JSON格式數據接口了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。