1 路由器
1.1 路由器是如何调用控制器的
路由器的位置 /app/Http/routes.php
1)当用GET方式访问 xx.com/yy 这个地址时,用XxController中的reg()方法去响应.
Route::get(‘/yy’, ‘XxController@reg’);
2)当用POST方式访问 xx.com/yy 这个地址时,用XxController中的pay()方法去响应.
Route::post(‘/yy’, ‘XxController@pay’);
3)第二个参数可以是匿名函数
Route::get(‘/’, function () {
return ‘hello’;
})
4)GET/POST访问xx.com/user时,都用XxController中的method()方法去响应.
Route::match([‘get’,’post’] , ‘/user’ , ‘XxController@method’)
5)GET,POST,PUT,DELETE..任何方法访问xx.com/foo/bar,都用第2个参数中的匿名函数去响应.
Route::any(‘/foo/bar’, function () {
return ‘Hello World’;
});
1.2 路由器与参数的传递
下例是指 xx.com/user/123这样的URL, user后面的值将会捕捉到,
并自动传递给控制器的方法或匿名函数
Route::get('user/{id}', function ($id) {
return 'User '.$id;
});
1.3 传递可选参数
Route::get('user/{name?}', function ($name = null) {
return $name;
});
Route::get('user/{name?}', function ($name = 'John') {
return $name;
});
1.4 参数的限制
Route::get('user/{id}', function ($id) {
})->where('id', '[0-9]+');
Route::get('user/{id}/{name}', function ($id, $name) {
})->where(['id' => '[0-9]+', 'name' => '[a-z]+']);
2 控制器
控制器存放在 \app\Http\Controllers\
如何创建控制器
在项目根目录下 php artisan make:controller TestController
3 模板
模板存放在\resources/view下
xx.php,或xx.blade.php
如果以.php结尾,模板中直接写PHP语法即可,例<?php echo $title; ?>
如果以.blade.php结尾,则是用laravel特有的模板语法.例{{ $title }}
模板与控制器的关系
XxController {
public function yyMethod(){
return view('zz'); // 将使用views/zz[.blade].php
}
public function yyMethod(){
return view('user.add'); // 将使用views/user/add[.blade].php
}
}