路由的url地址,除了前面讲的直接设定外,更加强大的地方在于可以通过模板的形式设定。
我们考虑这样一个问题:
要为每一个用户做一个主页,这个主页在目录/users/之下,传统的PHP,要访问名字为johnson的用户的主页,url的形式可能是:
http://localhost/users/page.php?name=johnson
通过name参数将用户名传递给网页。
这样的url不仅形式上不够优雅,对参数的管理也不方便——例如假设一个纯数字的用户名是不合法的,我们必须在page.php专门进行处理,才能把这个不合法的参数排除。
而对于laravel来说,在路由中进行适当设定后,用这样一个url就可以实现了:
http://localhost/users/johnson
不仅形式上优雅,而且把所有url的管理放到一个文件之中,让项目的管理更加方便、一目了然。
路由解析url的形式是这样的:
Route::get('users/{name}',function($name){
echo "<h1>$name</h1>";
});
其中’users/{name}',的花括号的内容,就是模板要匹配的部分,并且把这个匹配的内容传递给参数$name,进一步传递给要执行的函数。
在路由文件中设置这样一个路由,你键入http://localhost/users/jo