PhalApi开源接口框架 2.23.0
PhalApi 2.x 接口开发 - Hello World,开始编写人生的第一个接口!
【第三课 PhalApi 2.x 接口开发 - Hello World】 https://www.bilibili.com/video/BV1XJ411J7hq/?share_source=copy_web&vd_source=f4634749379d1151961b5797f4268f87
http://docs.phalapi.net/#/v2.0/hello-world?id=编写第一个接口
http://docs.phalapi.net/#/v2.0/hello-world?id=编写第一个接口
在PhalApi 2.x 版本中,项目源代码放置在/path/to/PhalApi2/src (D:\phpstudy_pro\WWW2\phalapi\src\app)目录中。里面各个命名空间对应一个子目录,默认命名空间是app,里面主要有Api、Domain、Model这三个目录以及存放函数的functions.php文件。例如像是这样的目录结构:
./src/
└── app
├── Api # 放置接口源代码,相当于控制器层
├── Common # 公共代码目录,放置工具等
├── Domain # 领域业务层,负责业务逻辑和处理
├── functions.php
└── Model # 数据源层,负责数据持久化存储及操作
---当需要新增一个接口时,先要在Api层添加一个新的接口文件。例如对于Hello World示例,可以使用你喜欢的编辑器创建一个./src/app/Api/Hello1.php文件,并在里面放置以下代码。---
// 文件 ./src/app/Api/Hello1.php
<?php
namespace App\Api;
use PhalApi\Api;
/**
* H-第一个接口
*/
//必须是hello1继承Api类
class Hello1 extends Api {
//文档中的接口参数说明
public function getRules() {
return array(
'world' => array(
'username' => array('name' => 'username', 'desc' => 'B站账号名称'),
),
);
}
/**
* 接口名称-欢迎B站
* @desc 欢迎B站的同学,bilibili!!
*/
public function world() {
return array('content' => 'Hello ' . $this->username);
}
}
http://localhost:8080/?s=App.hello1.World&username=123
编写接口时,需要特别注意:
- 1、默认所在命名空间必须为
App\Api
(第2行) - 2、具体实现的接口类必须是
PhalApi\Api
的子类 (第4行、第9行) - 3、定义接口方法,必须为public访问权限 (第23行)
- 4、接口参数,放置在getRules()函数方法中 (第11行)
- 5、返回业务的数据,对应data返回字段,推荐返回对象结构,方便扩展 (第24行)