pushHandler(new PrettyPageHandler); // $whoops->register(); $app = new Application(); // 执行应用 $app->namespace('apps') ->path('./applications/') ->name('home') ->boot(); Route::get('/', function () { return \response('测试'); }); // 测试注册路由 Route::get('news', [News::class, 'add?id=122']); Route::post('news/:id', function () use ($app): Response { $parameters = $app->request->getParameters(); return $app->response->setType(Json::class)->setContent([ 'msg' => $parameters['id'] . '获取成功', 'code' => 10000, 'data' => new stdClass(), ]); }); Route::put('news/:id', [News::class, 'edit']); Route::delete('news/:id', [News::class, 'delete']); Route::group('admin', function () { Route::get('member/edit/:category/:id', '/news'); }); function aaa($data) { return $data . '-top-nuomi'; } // 中间件 class TestMiddleware { public function handler(Request $request, $next) { // print_r(param(name: 'name', filter: 'aaa')); // return \response('https://topnuomi.com', \top\base\response\Text::class); // echo 'TestMiddleware' . PHP_EOL; // echo 'TestMiddleware' . PHP_EOL; // print_r($next); return $next(); } } class TestMiddleware1 { public function handler(Request $request, $next) { // echo 'TestMiddleware1' . PHP_EOL; // echo 'TestMiddleware1' . PHP_EOL; return $next(); } } // 路由调度,获得打包后的应用 $closure = $app->route->dispatch(); // 测试添加中间件 $app->middleware->addMiddleware([ TestMiddleware::class, TestMiddleware1::class ]); $response = $app->middleware->handler($closure); // print_r($response); // 响应输出 echo $app->response->send(); // class NewsModel extends Request // { // } // class Request // { // } // class News // { // public function lists(int $a, Request $request, int $page, News $news, int $t = 12345) // { // var_dump($a); // var_dump($page); // var_dump($request); // var_dump($news); // var_dump($t); // } // } // $container = Container::getInstance(); // $container->invokeMethod('News', 'lists', [ // 100, 1, 321 // ]); // $container->bind('test', function ($name = '') { // return new A($name); // }); // var_dump($container->make('A', ['王麻子1'])); // $a = $container->make('A', ['王麻子'], true); // var_dump($container->make('A', ['王麻子'], true)); // var_dump($container->make('A', ['王麻子2'])); // var_dump($container->invokeMethod('B', 'method', [ // 'i' => 1, // 'a' => new B, // 'j' => 2, // ])); // var_dump($container->make('test')); // var_dump($container->make('test')); // var_dump($container->make('test', ['王麻子3'], true));