Laravel5.5的安装
安装好WAMP环境后,在wampmanager.ini文件中将PHP版本更改为php7,查看php版本可以通过phpinfo()函数查看。 ,下载好后解压至Apache工作目录下。启动wamp服务后,正常情况下访问localhost/laravel/public就能显示Laravel的欢迎界面。
PhpStrom安装
编程还是离不开JB全家桶的~这步没有省略主要是因为jb全家桶更新3.4后大量激活方法和激活服务器集体失效。这里使用了ilanyu大佬提供的本地反向代理激活方法,或者自己手撸一个反代程序,不过比较麻烦的是每次打开IDE都需要进行授权认证,因此本地激活的IDE每次运行都需要启动一次反代程序,有条件最好挂在云服务器上。不过有条件还是要支持正版~
Laravel教程使用碰到的一些坑
- vagrant下
composer create-project laravel/laravel Laravel --prefer-dist "5.5.*"
报错, 解决方法:更换Composer国内镜像即可composer config -g repo.packagist composer https://packagist.phpcomposer.com
Laravel的路由
Laravel5.5版本中把路由的routes文件拿出来单独建立了一个routes文件。这里感觉和django的urls.py文件很类似,也是起到了Controller的作用,值得一提的是必须制定http请求类型
路由选项
代码语言:javascript复制// 基础路由
Route::get('/', function () {
return view('welcome');
});
Route::post('test', function(){
return 'hello test';
});
//多请求路由
Route::match(['get', 'post'], 'test2', function(){
return 'hello test2';
});
Route::any('test3', function (){
return 'hello test3';
});
路由参数
这里虽然写起来比django的要复杂,但是个人感觉比urls.py中的逻辑要清楚。
代码语言:javascript复制//路由参数
Route::get('user/{id}', function ($id){
return 'id '. $id;
});
Route::get('user/{name?}', function ($name = null){
return 'name '. $name;
});
Route::get('user/{id}/{name?}', function ($id, $name){
return 'id '. $id. ' '. 'name '. $name;
})->where(['id' => '[0-9] ', 'name' => '[A-Za-z] ']);
路由命名
命名的好处是可以直接通过命名之后的路由进行重定向,带参数的路由可以指定初始值,相当于给这个url一个名字,可以直接使用route()生成对应的url。
代码语言:javascript复制$app->get('user/{id}/profile', ['as' => 'profile', function ($id) {
//
}]);
$url = route('profile', ['id' => 1]);
生成重定向
代码语言:javascript复制return redirect()->route('profile',1);
这样就会重定向到 user/1/profile;
路由群组
这个相比django就比较代码上繁琐了,但是逻辑还是很好的
代码语言:javascript复制//此处为前缀群组
Route::group(['prefix' => 'member'], function(){
Route::get('hello', function(){
return 'hello';
});
Route::get('world', function(){
return 'world';
});
});
这个时候想显示hello时就不能直接访问hello,要访问member/hello 才行了