前言
公司业务需要转学PHP,而PHP中一个功能强大且生态链完整的PHP接口框架 PhalAPI
值得大家去学习,本学习笔记持续更新!
虽然官方文档写的十分明白,以及CSDN中PhalAPI框架内容也少之又少。
因此,以自我踩坑为基础,提供一个更为精简的学习笔记,本学习笔记将会省略部分安装及简单操作。
自定义接口
小伙伴会问 那在 PhalAPI中怎么自定义接口,同时需要满足什么条件呢?
- 一个PHP类
- 一个函数
- 一个浏览器
就可以完成接口开发实现!
大家跟我一起试试看!
项目实例
在目录为:./phalapi/src/app/Api下创建一个php文件名为:HelloWorld.php
内容如下:
<?php
namespace App\Api;
use PhalApi\Api;
/**
* HelloWorld 你好世界,这是我们对PhalAPI框架学习的第一个API
* @Author Marinda
*/
class HelloWorld extends Api
{
// 重写PhalAPI方法
public function getRules()
{
// 格式:数组(api方法名数组(API字段名(args)));
return array(
"index"=> array(
"userName" => array("name"=>"userName","default"=>"Marinda"),
"title" => array("name" => "title","default"=>"Hello World")
)
);
}
// 与我们自定义字段名的key相同!
public function index(){
return array("userName"=>$this->userName,"title",$this->title);
}
}
浏览器访问: http://127.0.0.1/phalapi/public/index.php?s=App.HelloWorld.index
结果
分布解析
HelloWorld.php 代码块中存在两个函数
- getRules()
由于HelloWorld.php是继承于 PhalAPI/Api/Api 类,而 PhalAPI/Api/Api 中有一个设置接口参数的 getRules() 方法!
因此我们上面代码块是重写该方法,自定义我们自己的参数item,以实现自定义接口参数的功能!
- index()
细心的小伙伴们就会发现,怎么有个index方法和规则中的
index
参数一致呢?还是框架硬性要求如此设置,其实并不然!
由于我们一个接口中会有很多很多个参数,而这些参数也需要有自己的一套实现函数,因此,在这里起到了 区别接口数据的作用!
结束语
关于 PhalAPI学习笔记 ——— 第一章自定义HelloWorld接口 就讲到这里,对你有帮助的话!
- 点赞
- 收藏
谢谢你的观看!