关于php:PHP-基于-SWX-框架搭建高性能API架构二

1、开启主动热重载

开发阶段中,对swoole我的项目启动主动热更新代码是很有必要的,不然每次更新了代码,都须要手动reload一次服务。

SW-X的热重载除了对框架配置文件、公共函数、Swoole-Event事件有效外,其余文件的批改都无效。

只须要批改,/config/reload.php 下的配置文件即可开启:

<?php
return [
    // 是否启用热重载
    'status' => false,
    // 检测的间隔时间(S)
    'interval_time' => 3,
    // 只监听的文件后缀
    'monitor_suffix' => 'php,html',
    // 监听的目录
    'monitor_list' => [
        '/app/',
        '/extend/',
    ],
    // 移出监听的目录
    'remove_list' => [],
];

2、创立控制器版本目录

/app/http/v1_0_1/controller/

应用 INFO_PATH 路由格调,创立一个 商品查问 接口 :

实现的文件地址:

/app/http/v1_0_1/controller/shop/select.php

代码如下:

<?php
namespace app\http\v1_0_1\controller\shop;
use x\controller\Http;

class test1 extends Http
{

    public function index() {
        return $this->fetch('演示接口地址');
    }
}

当初通过URL拜访:http://IP地址:端口/v1_0_1/controller/shop/select 就能拜访到这个接口了。

3、设置路由映射

理论开发中,咱们是不想把版本号显示给前端的,例如下面的接口,咱们只想展现为:

http://IP地址:端口/api/shop/select

为了对应这种场景,SW-X反对在 /box/route.php 自定义路由表文件中,应用 \x\Route 类 进行镜像绑定:

<?php
use x\Route;
// 镜像映射
Route::mirror([
    '/v1_0_1/controller/' => '/api/',
]);

保留胜利后,须要先stop,再start服务后失效。

留神:路由绑定胜利后,原来的路由地址会生效,不会保留。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理