laravel学习笔记

laravel初始化配置

1、wamp版本需求(PHP 版本 >= 5.5.9|Wamp2.5)

2、开启rewrite和vhost

C:\wamp\bin\apache\apache2.4.9\conf\httpd.conf

3,进入C:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf,添加一块下面这样的代码

ServerAdmin webmaster@dummy-host2.example.com

DocumentRoot "e:/code/laravel/public/"-------框架安装目录

ServerName minshop.com--------------访问项目的域名

ErrorLog "logs/dummy-host2.example.com-error.log"

CustomLog "logs/dummy-host2.example.com-access.log" common

4、在d:\wamp\bin\apache\apache2.4.9\conf\httpd.conf这个文件中开启下面这些php扩展

php.ini:C:\wamp\bin\php\php5.5.12\php.ini

extension=php_openssl.dll

extension=php_mbstring.dll

extension=php_pdo_mysql.dll

5,最后进入c:\windows\system32\drivers\etc\hosts,强hosts使用记事本打开,在底部加入127.0.0.1 项目访问域名如(minshop.com)

这一步修改可能由于没有权限无法修改,可以将文件拷贝出来,在别处修改完成后在复制过来覆盖原有的文件即可

laravel路由

首先先介绍一下常用的artisan命令:

1,php artisan list-----------------产看所有的artisan命令

2,php artisan make:controller 控制器的名称-------这一条命令时创建一个新的控制器

3,php artisan make:middleware 中间件的名称-------这一条命令时创建一个中间件

4,php artisan route:list-----------------------这一条命令时查看routes.php这个文件中创建的路由

1,表示加载框架首页,第一个参数表示浏览器地址栏的所填参数,第二个是一个必报函数

Route::get('/', function () {

return view('welcome');

});

2,如果没有将public目录下面的.htaccess文件复制到根目录里面,则需要在地址栏中输入blog.com/public/foo 就会输出hello word----------注意,blog.com后面必须加上public 才能正常访问。。。如果已经将.htaccess伪静态配置文件复制到根目录下,则只需输入blog.com/foo就会显示hello word*/

Route::get('/foo', function () {

echo 'get';

});

3,laravel Route postman post 提交TokenMismatchException in VerifyCsrfToken.php line 53;Laravel默认是开启了CSRF功能,需要关闭此功能有两种方法:打开文件:app\Http\Kernel.php,然后把这行注释掉:'App\Http\Middleware\VerifyCsrfToken'*/

Route::post('/foo', function () {

echo 'post';

});

/*Route::put('/foo', function () {

echo 'put';

});

Route::match(['get', 'post'], '/test', function () {

echo "metch";

});

Route::any('/foo', function () {

echo "foo";

});*/

4在地址栏中输入blog.com/user/123 就会输出user 123*/

Route::get('user/{id}', function ($id) {

return 'User ' . $id;

});

5路由参数的约束,限定id的取值只能是0到9,否则将报错

Route::get("user/{id}",function($id){

return 'User'.$id;

})->where('id',"[0-9]+");

6,输出设置的控制器指定的内容

/*Route::get('/login','Admin\LoginController@index');*/

//Route::get('/user/profile','Admin\IndexController@index')->name('profile');

7,路由命名

//profile为http://blog.com/user,也即是路由的别名

/*Route::get('user',['as'=>'profile',function(){

echo route('profile');

return '你好';

}]);*/

//Route::get('user',['as'=>'profile','uses'=>'Admin\LoginController@index']);

//等效于上面的那个写法,只是将as中的路由别名写在了外面的name方法中

//Route::get('user','Admin\LoginController@index')->name('profile');

8,路由分组(将具有相同特性的路由划分到一个组中)

//Route::get('admin/login','Admin\LoginController@login');

//Route::get('admin/index','Admin\LoginController@index');

Route::group(['prefix'=>'admin','namespace'=>'Admin'],function(){

Route::get('login','LoginController@login');

Route::get('index','LoginController@index');

Route::resource('article','ArticleController');

});

其中Route::resource是资源路由,这一条命令可以自动创建出对应的控制器中的方法如:

POST      | admin/article  | admin.article.store  | App\Http\Controllers\Admin\ArticleController@store

GET|HEAD  | admin/article  | admin.article.index  | App\Http\Controllers\Admin\ArticleController@index

GET|HEAD  | admin/article/create        | admin.article.create  | App\Http\Controllers\Admin\ArticleController@create

DELETE    | admin/article/{article}      | admin.article.destroy | App\Http\Controllers\Admin\ArticleController@destroy

PUT|PATCH | admin/article/{article}      | admin.article.update  | App\Http\Controllers\Admin\ArticleController@update

GET|HEAD  | admin/article/{article}      | admin.article.show    | App\Http\Controllers\Admin\ArticleController@show

GET|HEAD  | admin/article/{article}/edit | admin.article.edit    | App\Http\Controllers\Admin\ArticleController@edit

9,中间件---就是在路由上层添加了一层保护或者过滤

1,web中间件中有一个 \Illuminate\Session\Middleware\StartSession::class,意思是开启session服务;

2,自定义中间件

第一步>>>

在kernel.php中的 protected $routeMiddleware = [当中自定义一个如:'admin.login' => \App\Http\Middleware\AdminLogin::class,

意思是在app\Http\middleware中新建一个文件为AdminLogin.php---可以使用php artisan make:middleware AdminLogin来创建文件

第二步>>>

在Adminlogin.php中定义自己的过滤规则就行了

Edit ByMaHua

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,222评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,455评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,720评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,568评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,696评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,879评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,028评论 3 409
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,773评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,220评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,550评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,697评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,360评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,002评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,782评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,010评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,433评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,587评论 2 350

推荐阅读更多精彩内容