_ _
_ __ | |__ _ __ ___| |__ _____ __
| '_ \| '_ \| '_ \/ __| '_ \ / _ \ \ /\ / /
| |_) | | | | |_) \__ \ | | | (_) \ V V /
| .__/|_| |_| .__/|___/_| |_|\___/ \_/\_/
|_| |_|
phpshow,轻量简单易用的高性能php框架,默认启动workerman模式,抗大并发能力。
- Nginx
- php7以上
- pcntl
- libevent
- seaslog(选用)
- swoole(选用)
统一使用phpcomposer安装 composer require showx/phpshow
phpshow 的开源协议为 Apache-2.0,详情参见LICENSE
详见参考事例
return [
//框架里的模式 [0普通启动|1 workerman模式];
'type' => 1,
// 绑定的地址
'host' => '0.0.0.0',
// 启动的端口
'port' => 8080,
//进程worker数量
'count' => 4,
//数据库池的数量
'mysql_pool_num' => 6,
//调试模式
'debug' => 1,
//开发模式 [dev 查看加载异常|dev2 查看接口使用内存等]
'dev' => 1,
'dev2' => 0,
];
建议短标记
- short_open_tag = On ;php短标记打开 ,模板要使用这样的标记
nginx正常模式
server{
...
location / {
if ( !-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
try_files $uri $uri/ /index.html;
}
location ~ [^/]\.php(/|$) {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
...
}
高性能workerman模式
server {
server_name xxx.com
location / {
proxy_pass http://172.20.0.3:8080;
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
}
}
composer之后 ./vender/showx/phpshow/app 项目示例 ./vender/showx/phpshow/src 核心代码文件
简单的mvc模式 主要逻辑在于/app文件夹中 入口在/public文件夹(详情查询./vender/showx/phpshow/app)
路由采用简单的定义方式 $url/{$ct}/{$ac},http://www.baidu.com/index/index,默认ct和ac为index. 支持path_info /index.php/index/index
配置文件主要饮食site(基础配置)database(数据库配置)route_rule(路由规则配置) 放在app项目下的config文件夹
├── config 配置目录
│ ├── cron.php
│ ├── db.php
│ ├── signkey.php
│ └── site.php
├── control 控制类
│ ├── IndexController.php
├── index.php 程序入口
├── model 模型类
│ ├── IndexModel.php
├── public 静态文件目录
│ ├── favicon.ico
│ ├── index.html
│ ├── index.php 普通模式下的入口
│ └── robots.txt
├── runtime 临时缓存与日志目录
│ └── Log
└── view 模板目录
├── footer.php
├── header.php
├── index.php
新建composer.json文件
autoload": {
"psr-4": {
"app\\": "app/"
}
},
增加本地项目的autoload composer require showx/phpshow 在app里使用php index.php start启动服务器
- \phpshow\request 获取数据类
- \phpshow\response 输出类
- \phpshow\loader 核心加载类
- \phpshow\control 基层控制器
- \phpshow\model 基层模型
- \phpshow\lib\redis redis类
- \phpshow\lib\http http请求类
- \phpshow\lib\mysql 数据库驱动
- \phpshow\lib\debug 页面调试
- \phpshow\lib\jwt jwt会话验证
- \phpshow\lib\log 日志类
- \phpshow\lib\pool 进程池
- \phpshow\helper\util 辅助函数库
继承\phpshow\model即可调用相关函数
- insert1 新增数据
- update1 更新数据
- get_one 获取一条数据
- get_all 获取所有数据
- get_sql_one 获取指定sql的一条数据
- get_sql_all 获取指定sql的全部数据
使用纯php输出,模板里简单用 作为标签 vue带领大家,前后端分离,没需要用到模拟引擎
使用
联系本人 9448923#qq.com