- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
发行说明
发⾏说明
Laravel 5.0
Laravel 5.0 在默认的项⽬上引进了新的应⽤程序架构。新的架构提供了更好的功能来
构建健壮的 Laravel 应⽤程序,以及在应⽤程序 全⾯采⽤新的⾃动加载标准 ( PSR-
4 )。⾸先,来查看⼀些主要变更:
新的⽬录结构
旧的 app/models ⽬录已经完全被移除。相对的,你所有的代码都放在 app ⽬录
下,以及默认使⽤ App 命名空间。这个默认的命名空间可以使⽤新的 app:name
Artisan 命令来快速更改。
控制器 ( controller ), 间件 ( middleware ),以及请求 ( requests ,Laravel 5.0
新型态的类别),现在都存放在 app/Http 的对应⽬录下,因为他们都与应⽤程序的
HTTP 传输层相关。除了⼀个路由设置的⽂件外,所有的 间件现在都拆分开成单独
的类⽂件。
新的 app/Providers ⽬录取代了旧版 Laravel 4 .x app/start ⾥的⽂件。这些服务
提供者有很多启动应⽤程序相关的⽅法,像是错误处理,⽇志记录,路由加载,以及
更多。当然,你可以⾃由的建⽴新的服务提供者到应⽤程序。
应⽤程序的语⾔⽂件和视图都移到 resources ⽬录下。
Contracts
所有 Laravel 主要组件实现所⽤的接⼜都放在 illuminate/contracts 项⽬下。这
个项⽬没有其他的外部依赖。这些⽅便、集成的接⼜,可以让你⽤来让依赖注⼊变得
低耦合,将可以简单作为 Laravel Facades 的替代选项。
更多关于 contracts 的信息,参考完整⽂档。
路由缓存
如果你的应⽤程序全部都是使⽤控制器路由,你可以使⽤新的 route:cache Artisan
命令⼤幅度地加快路由注册。这对于有 00 个以上路由规则的应⽤程序很有⽤,可以
⼤幅度地加快应⽤程序这部分的处理速度。
路由中间件 ( Middleware )
除了像 Laravel 4 风格的路由 「过滤器 ( filters )」,Laravel 5 现在也⽀持 HTTP 间
件,⽽原本的认证和 CSRF 「过滤器」已经改写成 间件。 间件提供了单⼀、⼀致
的接⼜取代了各种过滤器,让你在请求进到应⽤程序前,可以⽅便地检查甚⾄拒绝请
求。
更多关于 间件的信息,参考完整⽂档。
控制器⽅法依赖注
除了之前有的控制器依赖注⼊,你现在可以在控制器⽅法使⽤类型提⽰ ( type-hint )
进⾏依赖注⼊。服务容器会⾃动注⼊依赖,即使路由包含了其他参数也不成问题:
public function createPost(Request $request, PostRepository $posts
//}
认证基本架构
⽤户注册,认证,以及重设密码的控制器现在已经默认含括了,包含相对应的视图,
放在 resources/views/auth。除此之外, 「users 」 数据表迁移也已经默认存在
框架 了。这些简单的资源,可以让你快速开发应⽤程序的业务逻辑,⽽不⽤陷在撰
写认证模板的泥潭上。认证相关的视图可以经由 auth/login 以及
auth/register 路由访问。App\Services\Auth\Registrar 服务会负
责处理⽤户认证和添加的相关逻辑。
事件对象
你现在可以将事件定义成对象,⽽不是仅使⽤字串。例如,查看以下的事件:
class PodcastWasPurchased
public $podcast;
public function __construct(Podcast $podcast)
$this-podcast = $podcast;
}}
这个事件可以像⼀般使⽤那样被派发:
Event::fire(new PodcastWasPurchased($podcast));
当然,你的事件处理会收到事件的对象⽽不是数据的列表:
class ReportPodcastPurchase
public function handle(PodcastWasPurchased $event)
文档评论(0)