Laravel问题整理

来源:互联网 发布:如何看待手撕鬼子 知乎 编辑:程序博客网 时间:2024/06/06 06:42

因为自己是刚开始学习的,所以把遇到的疑问写进来以及自己找到的答案
随时更新
(1)问:这段bootstrap/app.php代码中既然已经写了类的完全限定名,为什么还要用::class语法?

 $app->singleton(        Illuminate\Contracts\Http\Kernel::class,        App\Http\Kernel::class    );

答:在知乎上看到的答案
这里等价于

$app->singleton(        'Illuminate\Contracts\Http\Kernel',        'App\Http\Kernel'    );

用 ::class 的好处在于 IDE 里面可以直接改名一个 class,然后 IDE 自动处理相关引用。
同时,PHP 执行相关代码时,是不会先加载相关 class 的。
同理,代码自动化检查 inspect 也可以正确识别 class。

(2)问:根据程序的调用,在某一个看似会执行的方法里打印东西,却收不到为什么?
答:Laravel自带的config/app.php文件,将会看到一个providers数组,这里就是应用所要加载的所有服务提供者类,当然,其中很多是延迟加载的,也就是说不是每次请求都会被加载,只有真的用到它们的时候才会加载。

0 0