laravel文档写的虽然简单,但是里面包含的东西却是如此丰富,现在回归文档,总结一些常用的东西:
laravel 安装:
前提是安装好composer工具;在完成这些之后,切换到网站根目录www下;输入一句话即可,十分方便!
composer create-project laravel/laravel --prefer-dist laravel 回车即可完成安装
这句话的意思是,创建一个laravel项目,命名为laravel,项目目录在你当前切换的目录下,如你所愿,你的www目录下将会出现一个laravel文件夹,文件目录如下:
更新依赖文件:
命令行下切换到应用根目录;输入命令:composer update回车即可
启动laravel:
切换到,laravel项目根目录下,输入命令:
php artisan serve
机会开启服务器loclahost:8000;实际上这个服务是php4内置web服务器;你也可以直接切换到单入口文件目录下【/public】,输入命令php -S localhost:8000;启动web服务器
浏览器下输入:localhost:8000,进入根目录:
laravel路由设置;没错,你可以随心所欲的自定义你的路由,这点和node.js里面的express框架中的app.get(‘/’);app.post(‘/login’)很像;
路由绑定控制器:
Route::get('/',array('as'=>'index','uses'=>'IndexController@index'))
as 指定路由别名;uses绑定控制器及操作:在模板中:URL::to('/');URL::route('index');控制器中:$this->Redirect::to('/');$this->Redirect::route('index');
路由绑定参数,两种常用形式
(1)路径形式
Route::get('article/edit/{id}',array('as'=>'edit','uses'=>'ArticleController@edit'));
生成的路由是 localhost:8000/edit/1
{id}表示绑定id参数;对应控制器方法中声明参数
public function edit($id){
echo $id;
}
正则匹配参数,进一步指定参数为整数
Route::get('article/edit/{id}',array('as'=>'edit','uses'=>'ArticleController@edit'))->where('id','[0-9]+');
(2)get参数形式
Route::get('article/edit/{id?}',array('as'=>'edit','uses'=>'ArticleController@edit'));
生成的路由是 localhost:8000/edit?id=1
自动生成resfull风格路由:
这个就更神奇了;只需要在路由文件中写入一句话就搞定了!
Route::resource('admin', 'AdminController');
这里会自动生成resfull风格的路由规则
接下来只需要到控制器下定义这些方法就行了
class AdminController extens Controller{
public function index(){}
}
public function create(){}
}
public function edit(){}
}
public function upddate(){}
}
public function destroy(){}
}
指定过滤器
Route::get('user', array('before' => 'old','after'=>'finished', 'uses' => 'UserController@showProfile'));
这里表示;给当前控制器下的操作分别指定前置控制器old,和后置控制器finished
路由过滤器组;采用分组模式和匹配模式
分组模式:
Route::group(array('before' => 'auth'), function()
{
Route::get('/', function()
{
// Has Auth Filter
});
Route::get('user/profile', function()
{
// Has Auth Filter
});
});
匹配模式:
Route::when('admin/*', 'auth');
Route::when('admin/*', 'auth', array('post'));
表示匹配到admin/*的路由将会执行auth过滤器