SilangPHP极简 http 组件
SilangPHP是一款极简 http 组件,提示Api、Service模式。
说明
非标准化http-message, 路由使用fastroute结合
项目示例
composer create-project "silangtech/silangweb:dev-master" project1
路由
添加路由
addRoute(方法, 路由规则, Callable, middleware);
\SilangPHP\Route::addRoute('GET', 'silangphp/index', '\\App\\Controller\\IndexController@Index');
使用路由组
addGroup(前缀,Callable, middleware);
\SilangPHP\Route::addGroup('silangphp', function(){
\SilangPHP\Route::addRoute('GET', 'index', '\\App\\Controller\\IndexController@Index');
});
全局中件间
\SilangPHP\Route::use(funciton($c){
// 逻辑前
\SilangPHP\Route::next();
// 逻辑后
});
控制器示例
Class IndexController{
// 一定要加$c参数,主要返回相关的context
public function Index($c)
{
}
}
request和response
public function Index($c)
{
$c->reqeust->item('test', '');
$c->reqeust->get('test', '');
$c->response->json(0, 'test', '1234');
}
入口
新建好index.php即可
http
// 定义好与vendor同目录即可,加载composer使用
define("PS_ROOT_PATH", dirname(dirname(FILE)));
// 设置你自己的Config路径, 不然读取不了Config
define("PS_CONFIG_PATH", PS_ROOT_PATH."/Config/");
// 设置你项目的tmp路径
define("PS_RUNTIME_PATH", PS_ROOT_PATH."/Runtime/");
// 加载composer
require_once(PS_ROOT_PATH."/vendor/autoload.php");
// 这里处理Route
include 'Route.php'; // 这里自己思考即可
//运行框架
\SilangPHP\SilangPHP::run();
Command与Service
// 定义好与vendor同目录即可,加载composer使用
define("PS_ROOT_PATH", dirname(dirname(FILE)));
// 设置你自己的Config路径, 不然读取不了Config
define("PS_CONFIG_PATH", PS_ROOT_PATH."/Config/");
// 设置你项目的tmp路径
define("PS_RUNTIME_PATH", PS_ROOT_PATH."/Runtime/");
require_once(PS_ROOT_PATH."/vendor/autoload.php");
// 输入要运行的命令
\SilangPHP\SilangPHP::runCmd($argv[1] ?? '', $argv[2] ?? '');
其它小方法
HTML模板引擎
\SilangPHP\SilangPHP::HTML('/web/index.php', $params);
临时缓存
\SilangPHP\SilangPHP::setCache('key', 'test');
\SilangPHP\SilangPHP::getCache('key');
评论