View::exists () 和 view ()->exists () 有相同的功能,请问它们有何区别?

举例:View::exists()和view()->exists()有相同的功能,前者需引入use Illuminate\Support\Facades\View;,后者是直接调用全局函数,问题来了:既然已经有现成的全局函数可用,为何还要提供前一种方法,多引入一个(可能是多个可能还包含其它依赖文件)类文件不是更麻烦,更臃肿吗,是否画蛇添足多此一举?

讨论:laravel中很多功都提供了像这样的两种实现方法,请问这两种方法分别是怎么实现的,有何区别(比如使用场景、性能、计算多还是占用内存多)?大家更倾向选择使用哪一种?

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 3

还可以app('view')->exists() resolve('view')->exists()

都是用不同的方法解析'view'绑定的服务

内存和性能,没什么区别吧;鸡肋,不知道,我不用View::门面。
我倾向return view('user.index');

4年前 评论
小李世界 4年前
pardon110

区别就是函数用法,你不用手动引入view类了。

4年前 评论
Epona

第一个是 Facades, 第二个是辅助方法

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!