Laravel实用小功能

1.控制访问次数

laravel5.2的新特性,通过中间件设置throttle根据IP控制访问次数

原理:通过回传三个响应头​​X-RateLimit-Limit​​,​​X-RateLimit-Remaining​​,​​Retry-After​​实现控制访问次数。

  • ​X-RateLimit-Limit​​:指定时间内允许的最大请求次数
  • ​X-RateLimit-Remaining​​:指定时间内剩余请求次数
  • ​Retry-After​​:距离下次重试请求需要等待的时间(s)

代码实现:

// 一分钟内同一个IP限制访问5次
Route::group(['prefix' => 'admin', 'middleware' => 'throttle:5'], function(){
Route::get('user', 'UserController@show');
});


2.一条神奇的实现登录注册的命令

laravel5.2的新特性

​php artisan make:auth​

3.​​all()​

laravel5.3新特性

laravel5.2:​DB::table('users')->get()​​返回的是数组。

laravel5.3:​DB::table('users')->get()​​返回的是集合。

如果我们使用的是​​laravel5.3​​,可以通过​​DB::table('users')->get()->all()​​返回数组,不过返回集合也有一定的好处,返回集合我们可以使用集合的一些方法,比如取出集合中的第一个元素可以直接使用​​first()​​方法。

4.​​$loop​

laravel5.3新特性​​$loop​​变量是使用在​​@foreach​​循环中

$loop提供的属性:

  • ​index​​:从1开始循环索引
  • ​remaining​​:循环还有多少个条目
  • ​count​​:循环总条目数
  • ​first​​:是否是第一个
  • ​last​​:是否是最后一个
  • ​depth​​:循环层级
  • ​parent​​:如果循环位于另一个​​@foreach​​中,返回父循环引用

5.超简单的分页

取数据:​User::paginate($num)​

模板:​$users->links()​

模板中可能需要引入css文件,css文件路径​​public/css/app.css​​,直接可以​​<link rel="stylesheet" href="/css/app.css">​