纵有疾风起
人生不言弃

php API接口入门

1.简述:

api接口开发,其实和平时开发逻辑差不多;但是也有略微差异;

平时使用mvc开发网站的思路一般是都 由控制器 去 调用模型,模型返回数据,再由控制器把数据放到视图中,展现给用户;

api开发是:使用控制器 去调用模型,模型返回数据,在有控制器 输出 json格式字符串 或者 XML 字符串;

2.逻辑代码:

微型mvc结构 :controller 控制器,modal 模型,view 视图,db类 (访问数据的类)

复制代码
 1 <?php 2  3 class TestController{ 4     private $db = null; 5  6     function __construct(){ 7         require './db.class.php'; 8         $this -> db = new db(); 9     }10 11     /**12      * @desc 返回数据13      * @author wzh14      * @date 2017-02-1915      * @qq 64694306716      */17     private function jsonReturn($data){18         $return = array(19             'status' => 200,    /* 返回状态,200 成功,500失败 */20             'data' => $data,21             'message' => '获取成功',22         );23         echo json_encode($return);die;24     }25 26     /**27      * @desc 返回数据28      * @author wzh29      * @date 2017-02-1930      * @qq 64694306731      */32     private function success($message){33         $return = array(34             'status' => 200,    /* 返回状态,200 成功,500失败 */35             'message' => $message,36         );37         echo json_encode($return);die;38     }39 40 41     /**42      * @desc 返回数据43      * @author wzh44      * @date 2017-02-1945      * @qq 64694306746      */47     private function error($message){48         $return = array(49             'status' => 500,    /* 返回状态,200 成功,500失败 */50             'message' => $message,51         );52         echo json_encode($return);die;53     }54 55 56     /**57      * @desc 测试api接口 根据 班级id获取该班级下的所有学员58      * @author wzh59      * @version 1.060      * @date 2017-02-1961      */62     public function getList(){63         $class_id = (int) $_GET['class_id'];64         $sql = " select student_id,student_name,gander from student where class_id = '$class_id' and is_delete = 0 ";65         $list = $this -> db -> getAll($sql);66         if(empty($list)){67             $this -> error('暂无数据');68         }69         $data['list'] = $list;70         $this -> jsonReturn($data);71     }72 73     /**74      * @desc 测试api接口 获取该学员 是否 已经打卡75      * @author wzh76      * @version 1.077      * @date 2017-02-1978      * @qq 64694306779      */80     public function getSignStatus(){81         $student_id = (int) $_GET['student_id'];82         $time = time();83         $start_time = strtotime(date('Y-m-d',$time) . ' 00:00:00');84         $end_time = $start_time = 3600 * 24;85         $sql = " select status from student_status where student_id = '$student_id' ";86         $status = $this -> db -> getOne($sql);87         if($status == 1){88             $this -> success('已打卡');89         }else{90             $this -> error('未打卡');91         }92     }93 94 }
复制代码

总结:通过以上代码可以看出 和平时写代码的逻辑是相同的

文章转载于:https://www.cnblogs.com/shenzikun1314/p/8118910.html

原著是一个有趣的人,若有侵权,请通知删除

未经允许不得转载:起风网 » php API接口入门
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录