苹果cms二次开发手册之苹果cms自定义API
生活随笔
收集整理的這篇文章主要介紹了
苹果cms二次开发手册之苹果cms自定义API
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
有時候我們需要開啟api來給前端提供一些數據,蘋果cms自帶的api能力有限,需要自定義接口,那么如何來自定義接口呢?我總結了兩種方式實現:
第一種:新增控制器
在application/api/controller這個目錄下創建一個Test.php文件如下:
Test.php
PS:文件名一定要大寫開頭,tp5就是這么決定的,咱也不知道為啥!!
這樣第一步我們就完成了,可通過域名+/api.php/test進行訪問
以上僅僅是創建了接口控制器,接口一定是要請求我們cms里面的數據,例如影片數據。
$lp = $this->request->param();//請求的參數$where = [];$where['type_id']= $lp['type'];//分類id$order ='vod_time desc';//排序$page = $lp['page'];//頁數$limit = $lp['num'];//數量$data = model('Vod')->listData($where,$order,$page,$limit);$list = ['code'=>0,'data'=>$data];return json($list);這時候我們通過?http://www.xxx.com/api.php/test?type=1&page=1&num=20?get請求就可以輸出json數據了,當然也可以post請求。
第二種:通過模板自定義php功能
1.在全局引入include.html 模板中加入
{php}require MAC_ROOT_TEMPLATE . 'php/function.php'{/php}2.在html中創建php文件夾和function.php文件
function.php
<?php function vod(){$param = input();$param['page'] = intval($param['page']) < 1 ? 1 : intval($param['page']);$param['limit'] = intval($param['limit']) < 20 ? 20 : intval($param['limit']);$where = [];$where['vod_type'] = $param['type'];$order ='vod_time desc';//排序$res = model('Vod')->listData($where, $order, $param['page'], $param['limit']);return json($res['list']); };3.接著在label自定義模板目錄中中創建api.html
api.html
{include file="public/include"} //或者 {php}require MAC_ROOT_TEMPLATE . 'php/function.php'{/php} {:vod()}//執行函數最后通過域名http://www.xxx.com/index.php/label/api.html?type=1&page=1&limit=20?請求接口
?
總結
以上是生活随笔為你收集整理的苹果cms二次开发手册之苹果cms自定义API的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python Pickle任意代码执行漏
- 下一篇: Siliconlabs Matter O