Download the PHP package roki/more without Composer
On this page you can find all versions of the php package roki/more. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Please rate this library. Is it a good library?
Informations about the package more
MorePHP
一个基于 swoole
的服务端MVC框架
安装
特性
- 常驻进程,支持协程(
Context
管理) - 简单的依赖注入容器
- MVC,简单的路由(支持
RESTful
风格) - 对象池
- MySQL ORM
- 基于对象池+协程
Context
管理器实现协程连接池 - 使用
laravel
blade 模板引擎
框架使用要求
- swoole4.x
- PHP7.x
- 面向对象,尽量避免过多使用全局变量、类静态变量
开发计划
- Facade
- Middleware
- RPC
配置
{projectroot}/Config/app.conf.php
php
<?php
return array(
// 服务配置
'swooleServer' => [
// 服务类型
'type' => \More\Src\Core\Swoole\ServerManager::TYPE_WEB_SOCKET,
'port' => 9501,
'host' => '0.0.0.0',
'mode' => SWOOLE_PROCESS,
'sockType' => SWOOLE_TCP,
'setting' => [
//'task_worker_num' => 8, //异步任务进程
//'task_max_request' => 10,
'max_request' => 5000, // worker最大处理请求数
'worker_num' => 8, // worker数量
'enable_coroutine' => true, // 开启协程
]
],
'log' => [
'level' => \More\Src\Core\Log\Logger::LEVEL_DEBUG,
'dateFormat' => "Y-m-d H:i:s"
],
'database' => [
'default' => [
'driver' => 'mysql',
'host' => '192.168.99.100',
'database' => 'test',
'username' => 'root',
'password' => '123456a.',
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_general_ci',
//'unix_socket' => '/var/lib/mysql/mysql.sock',
'prefix' => 't_',
'port' => 3306,
'getConnectionTimeout' => 1, // 获取连接最多等待秒数
'poolSize' => 20,
'debug' => true, // 调试模式,打印sql
'resultType' => \More\Src\Lib\Database\Model::RESULT_TYPE_ARRAY
]
],
'redis' => [
'host' => '192.168.99.100',
'port' => 6379,
'password' => '123456a.',
'index' => 1,
'poolSize' => 20,
'connectTimeout' => 2, // 连接超时时间($redis->connect()超时时间)
'getConnectionTimeout' => 1, // 从池中获取连接最多等待秒数($pool->pop()操作超时时间)
],
'cache' => [
'expire' => 86400,
'prefix' => 'cache_'
],
'session' => [
'expire' => 86400,
'prefix' => 'session_'
],
// 是否开启路由缓存
'routeCache' => true,
// 路由缓存内存表大小
'routeTableSize' => 1024,
// 路由缓存表名称 (Container 中的 key)
'routeTableName' => '__routeTable',
// 临时文件夹
'tempDir' => PROJECT_ROOT . '/temp',
'timezone' => 'Asia/Shanghai',
'providers' => [
/** Framework Service Providers **/
\More\Src\Core\Swoole\ServerManagerServiceProvider::class,
/** HTTP Service Providers **/
\More\Src\Core\Http\HttpServiceProvider::class,
\More\Src\Core\Route\RouteServiceProvider::class,
/** WebSocket Service Providers **/
\More\Src\Core\WebSocket\WebSocketServiceProvider::class,
/** Database Service Providers **/
\More\Src\Lib\Database\DatabaseServiceProvider::class,
\More\Src\Lib\Pool\PoolServiceProvider::class,
\More\Src\Lib\Redis\RedisServiceProvider::class,
\More\Src\Core\Log\LogServiceProvider::class,
\More\Src\Lib\Cache\CacheServiceProvider::class,
],
); bash
php server.php
### 路由
`{projectroot}/App/Http/Routes/*.php`
### 控制器
Http 控制器位于 `{projectroot}/App/Http/Controller` 目录
命名方式为 `IndexController.php`
需要继承 `\More\Src\Core\Http\Controller` 类
### 模型
`TestController.php`
> 其他用法请参照框架源码~
All versions of more with dependencies
PHP Build Version
Package Version
Requires
duncan3dc/blade Version
^4.2
The package roki/more contains the following files
Loading the files please wait ....