Rumah >pembangunan bahagian belakang >tutorial php >php之API接口入门详解

php之API接口入门详解

小云云
小云云asal
2018-03-27 09:43:1813222semak imbas

API就是操作系统留给应用程序的一个调用接口,应用程序通过调用操作系统的 API 而使操作系统去执行应用程序的命令(动作)。本文主要和大家分享php之API接口入门详解,希望能帮助到大家。

1.简述:

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

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

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

2.逻辑代码:

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

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

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

相关推荐:

如何在本地进行API接口测试

api接口安全验证功能的实现

PHP进行API接口测试

Atas ialah kandungan terperinci php之API接口入门详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn