具體介紹thinkPHP5.0框架API優化後的友善分析

黄舟
發布: 2023-03-06 17:56:02
原創
1195 人瀏覽過

這篇文章主要介紹了thinkPHP5.0框架API優化後的友善度,結合具體實例分析了thinkPHP5.0框架進行API優化後在資料輸出及錯誤調試方面的友善改進,需要的朋友可以參考下

本文實例講述了thinkPHP5.0框架API優化後的友善性。分享給大家供大家參考,如下:

新版ThinkPHP針對API開發做了很多的優化,也不依賴原來的API模式擴充。

資料輸出

新版的控制器輸出採用Response類別統一處理,而不是直接在控制器中進行輸出,透過設定default_return_type或動態設定不同類型的Response輸出就可以自動進行資料轉換處理,一般來說,你只需要在控制器中傳回字串或陣列即可,例如如果我們配置:

'default_return_type'=>'json'
登入後複製

那麼下面的控制器方法傳回值會自動轉換為json格式並傳回。

namespace app\index\controller;
class Index
{
  public function index()
  {
    $data = ['name'=>'thinkphp','url'=>'thinkphp.cn'];
    return ['data'=>$data,'code'=>1,'message'=>'操作完成'];
  }
}
登入後複製

訪問該請求URL位址後,最終可以在瀏覽器中看到輸出結果如下:

複製程式碼 程式碼如下:

{"data":{"name":"thinkphp","url":"thinkphp.cn"},"code":1,"message":"\u64cd\u4f5c\u5b8c\u6210"}
登入後複製

如果你需要回傳其他的資料格式的話,控制器本身的程式碼不需要做任何改變。

支援明確指定輸出類型的方式輸出,例如下面指定JSON資料輸出:

namespace app\index\controller;
class Index
{
  public function index()
  {
    $data = ['name'=>'thinkphp','url'=>'thinkphp.cn'];
    // 指定json数据输出
    return json(['data'=>$data,'code'=>1,'message'=>'操作完成']);
  }
}
登入後複製

或指定輸出XML類型資料:

namespace app\index\controller;
class Index
{
  public function index()
  {
    $data = ['name'=>'thinkphp','url'=>'thinkphp.cn'];
    // 指定xml数据输出
    return xml(['data'=>$data,'code'=>1,'message'=>'操作完成']);
  }
}
登入後複製

核心支援的資料類型包括view、xml、json和jsonp,其他類型的需要自己擴充。

錯誤偵錯

由於API開發不方便在客戶端進行開發偵錯,但ThinkPHP5的Trace偵錯功能支援Socket在內的方式,可以實現遠端的開發偵錯.

設定方式:

'app_trace' => true,
'trace'   => [
  'type'       => 'socket',
  // socket服务器
  'host'       => 'slog.thinkphp.cn',
],
登入後複製

然後安裝chrome瀏覽器外掛程式後即可進行遠端偵錯,詳細參考調試部分。

以上是具體介紹thinkPHP5.0框架API優化後的友善分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!