#1 json 返回兩種形式的資料
"字元" //字串
//json 鍵值物件形式
json 只返回utf8 形式的資料,如果轉化了編碼則返回 null
在練習目錄下新建response.php 檔案
<?php
$arr = array(
'id' =>1,
'name'=>'siangwa',
'title'=>"標題"
);$data = "phpstorm無法輸入中文";
$newdata = iconv('utf-8','gbk',$data);
echo $newdata;
echo json_encode($newdata);
檢視,後面的輸出為null
#返回的標準格式是 :
code : 狀態碼(200,400等)
message:提示資訊
data :返回資料
#1.封裝返回json 資料
<?php
class response
$result = array(
'code' => $code,
'massage' =>$massage,
'data'=>$data,
);echo json_encode($result);
exit;
}}
新建測試檔案 index.php
<?php
require_once('./response.php');
$arr = array(
'id'=>1,
'name'=>'singwa'
);response::json(200,'success',$arr);
#生成xml 檔案
兩種形式
1)組裝字串
2)使用系統型別
domdocument
xmlwriter
******xml
以下是組裝字串形式
#在response.php 的json 函式下面新增
public static function xml()
#在class response 類外 測試
response::xml();
#封裝xml 資料返回
返回的資料陣列有下面兩種形式
1. array('index'=>'api')
2. array(1,7,89)
而且 xml 返回的節點 key 不能為數字
/**
* @param $code
* @param $massage
* @param $data
*/public static function xmlencode($code,$massage,$data)
$result = array(
'code'=>$code,
'message'=>$massage,
'data'=>$data,
);header('content-type:text/xml');
$xml = "<?xml version='1.0' encoding='utf-8' ?>";
$xml .= "";
$xml .= self::xmltoencode($result);
$xml .= "";
echo $xml;
}public static function xmltoencode($data)'";
$key = "item";
}$xml .= "<>";
$xml .= is_array($value) ? self::xmltoencode($value) : $value;
$xml .= "";
}return $xml;
}
# 綜合封裝
const json = 'json';
/*** @param $code
* @param $massage
* @param $data
* @param string $type
*/public static function show($code,$massage,$data,$type= self::json)
$type = isset($_get['format']) ? $_get['format'] : self::json;
$result = array(
'code' => $code,
'massage' =>$massage,
'data'=>$data,
);if($type == 'json')elseif($type == 'array')elseif($type == 'xml')else
}
本節課類
class response
$type = isset($_get['format']) ? $_get['format'] : self::json;
$result = array(
'code' => $code,
'massage' =>$massage,
'data'=>$data,
);if($type == 'json')elseif($type == 'array')elseif($type == 'xml')else
}/**
* @param $code
* @param $massage
* @param $data
*/public static function json($code,$massage,$data)
$result = array(
'code' => $code,
'massage' =>$massage,
'data'=>$data,
);echo json_encode($result);
exit;
}/**
* @param $code
* @param $massage
* @param $data
*/public static function xmlencode($code,$massage,$data)
$result = array(
'code'=>$code,
'message'=>$massage,
'data'=>$data,
);header('content-type:text/xml');
$xml = "<?xml version='1.0' encoding='utf-8' ?>";
$xml .= "";
$xml .= self::xmltoencode($result);
$xml .= "";
echo $xml;
}public static function xmltoencode($data)'";
$key = "item";
}$xml .= "<>";
$xml .= is_array($value) ? self::xmltoencode($value) : $value;
$xml .= "";
}return $xml;
}}
慕課 php 開發APP介面(三)
檔案 存key value 值 value 不為空,則存,為空 則讀,為 null 則刪除 class file public function cachedata key,value path dir dirname filename if is dir dir return file put c...
php開發app介面
1 php將陣列轉換為json格式 arr array id 1,name siangwa echo json encode arr 該函式只接受utf 8的格式 結果 2 封裝通訊資料介面資料方法 code 狀態碼 200,400 等 message 提示資訊 200 成功 400 失敗 data...
php開發App介面
思路流程 如何通訊 客戶端傳送http請求 伺服器返回資料。封裝通訊介面方法 2 1 json方式封裝通訊介面 14 39 先上 response.class.php description 用於返回指定資料格式的類 param code int 返回的狀態碼 param message strin...