laravel 5.3 新特性

参见:https://laracasts.com/series/whats-new-in-laravel-5-3

目前5.3还未正式发布,不过可以在终端通过命令laravel new laravel5.3 --dev 来得到5.3的laravel 版本

另外也可以在 github.com 上官方文档的分支上查看 5.3 的文档:
https://github.com/laravel/docs/tree/5.3

目录改动

  • 路由(routes)
    路由现在可以更加直观地看到了,单独成为一个目录并在放在了根目录下,其中之前的 routes.php 被划分成了两个路由:api.phpweb.php
laravel 5.3 新特性_第1张图片
routes.png

可以通过在终端执行命令:php artisan route:list 更加直观的看到区别

laravel 5.3 新特性_第2张图片
artisan_routes.png
  • app 目录下的删减
laravel 5.3 新特性_第3张图片
5.2 app dir
laravel 5.3 新特性_第4张图片
5.3 app dir

可以看到 5.3 app 目录下的结构更加的精简清晰。这里的删减并不是说删除了它们,而是说在创建相对应的文件时,目录才会被相对应的创建。
例如,创建一个新的 event 时: php artisan make:event newEvent,这时候 Events目录便会被相对应的创建,其他依次类推。

查询改动

所有的查询将返回集合对象而不是数组。接下来通过 5.2 和 5.3 来做下对比
创建新用户进行测试: factory('App\User',2)->create();

laravel 5.3 新特性_第5张图片
tinker_create_users

接下来进行查询测试:DB::table('users')-get()

laravel 5.3 新特性_第6张图片
tinker_query

可以发现在 5.2 和 5.3 返回的格式已经不一致了

全局缓存

\vendor\laravel\framework\src\Illuminate\Foundation\helpers.php 定义了一个缓冲全局函数 cache(),它的使用方法跟 session 很相似,但 cache 可以多加一个参数,这个参数用来指定缓存的过期时间(参数默认是以分钟计算),
更多的信息可以在这里获取:https://github.com/laravel/docs/blob/5.3/cache.md

默认的 javascript 框架 -- Vue

(Vue)[https://vuejs.org.cn/] 将作为 laravel 5.3 的默认 javascript 框架,当然你也可以手动地移除它。

更加简单的分页

向数据库中添加40条用户数据:factory('App\User',40)->create();
定义路由:
Route::get('/', function () { return view('user',['users'=>App\User::paginate(4)]);});
定义视图 user.blade.php

    @foreach($users as $user)
  • {{$user->name}}
  • @endforeach
{{$users->links()}}

这样一个分页的页面就快速完成了:

你可能感兴趣的:(laravel 5.3 新特性)