php封裝app的方法:1、建立json.php檔案和demo.php檔案;2、在php中用陣列表示JSON格式資料;3、將陣列封閉成JSON資料即可。
本文操作環境:windows7系統、PHP7.4版、DELL G3電腦
使用php封裝APP介面
我們先來介紹Json的封裝方法
json_encode函數傳遞中文的話,輸出後是亂碼的,針對這個問題我覺得有必要做一個解釋: 其實json_encode對中文那不是亂碼,只是json_encode會將中文轉換為unicode編碼,所以輸出後是這個編碼,但不影響我們使用,我們json_decode後就是正常的值了,但如果你想在輸出json_encode的時候也是中文的話,其實有一個辦法,如下:echo urldecode(json_encode(urlencode("JSON中文輸出解決方案")) );以下上封裝介面的Demo:<?php //服务端 json.php //php中用数组表示JSON格式数据 header("Content-type:text/html;charset=utf-8"); $arr = array( 'code' => 200, 'message' => '数据返回成功', 'data' => array( 'name' =>'bawei', 'email' =>'www.bawei@qq,com', ), ); echo json_encode($arr); //将数组封闭成JSON数据 主要函数json_encode; ?>
//客户端 demo.php <?php header("Content-type:text/html;charset=utf-8"); $url = "http://localhost/syphp/app.php"; //URL取绝对路径 $tranlatestr = file_get_contents($url); //获得URL文档 file_get_contents $bb = json_decode($tranlatestr); //将JSON数据转换成数组 echo $bb->data->website; //取得数组内容字段 ?>
相比較起XML封裝接口,Json的資料轉換比XML簡單了許多僅此一個函數;
但是可讀性來說,XML看起來更直觀一些,而Json看起來比較亂,費時間;
以上上Json的 下面來弄一個XML的!
方法:php產生XML資料;
如何產生XML資料呢?
以下兩種方法可以實現--> 1.組裝成XML字串 2.使用系統類別 如:DomDocument、XMLWriter、SimpleXML
先直接上Demo!
<?php class Response { /** * 按xml方式输出通信数据 * @param int $code 状态码 * @param string $message 提示信息 * @param array $data 数据 * @return void */ public static function xmlEncode($code,$message='',$data=array()) { $r = ''; if(!is_numeric($code)) $r = ''; $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($result); $xml .= "</root>"; $r = $xml; echo $r; } public static function xmlToEncode($data) { $xml = $attr = ""; foreach($data as $key=>$value) { if(is_numeric($key)) { $attr = "id='{$key}'"; $key = 'item'; } $xml .= "<{$key} {$attr}>"; $xml .= is_array($value)?self::xmlToEncode($value):$value; $xml .= "</{$key}>\n"; } return $xml; } } ?>
以上是php封裝app的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!