PHPackages                             ruke318/phpcr - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. ruke318/phpcr

ActiveLibrary[Framework](/categories/framework)

ruke318/phpcr
=============

my frame

1.0.0(8y ago)1111MITPHPPHP &gt;=5.6.0

Since May 13Pushed 6y agoCompare

[ Source](https://github.com/ruke318/myFrame)[ Packagist](https://packagist.org/packages/ruke318/phpcr)[ RSS](/packages/ruke318-phpcr/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (1)Dependencies (1)Versions (2)Used By (0)

### 瓦力部署测试222, 看回滚

[](#瓦力部署测试222-看回滚)

PHPCr
=====

[](#phpcr)

这个是我自己用来写`api`的,只有一些简单的功能

路由 (模仿laravel的样子, 但实际上...)
--------------------------

[](#路由-模仿laravel的样子-但实际上)

目前有的方法有 `get`, `post`, `put`, `delete`, `options`, `patch`, `controller`, `group`

#### 普通请求

[](#普通请求)

```
Route::get('/test', 'TestController@getIndex');
Route::post('/test', function () {
   return 123;
});
//适应正则匹配
Route::put('/test/{id:\d+}', 'TestController@putIndex');
......
```

#### controller

[](#controller)

```
Route::controller('/test', 'TestController');
//控制器中的方法 getXXX, postXXX, deleteXXX ... ...
```

#### group

[](#group)

```
//App\Controllers\TestController\getIndex
Route::group(['namespace' => 'App\Controllers'], function () {
    Route::get('test', 'TestController@getIndex');
});

// host/v4/test
Route::group(['prefix' => 'v4'], function () {
    Route::post('test', 'App\Controllers\TestController@postIndex');
});

// 中间件
Route::group(['middleware' => 'TestMiddleware'], function () {
    Route::controller('/test', 'App\Controllers\TestController');
});

// 可以单个都加
Route::group(['middleware' => 'TestMiddleware', 'namespace' => 'App\Controllers', 'prefix' => 'prefix'], function () {
    Route::controller('test', 'TestController');
});

控制器的话, path 参数和Request被注入到控制器方法中
 Route::put('/test/{id:\d+}', 'TestController@putIndex');

use Lib\Request;

class TestController
{
    public function putIndex(Request $request, $id)
    {
        return success($request->id === $id);
    }
}
```

中间件(这样子和laravel一样, 但实现..)
=========================

[](#中间件这样子和laravel一样-但实现)

`app\Middleware`

```
namespace App\MiddleWare;

use Closure;

class TestMiddleWare
{
    public function handle($request, Closure $next) {
        //前置中间件
        $before = $request->get('before');
        if ($before) {
            $request->hh = 'tt';
        }

        $response = $next($request);
        // 后置操作
        $ret = json_decode($response);
        $ret->test = 'middleware1';
        return json_encode($ret);
    }
}
```

config
------

[](#config)

读取配置文件的类

读取的文件是根目录下的`config`目录下的文件,返回的是数组

```
