它是一次性把所有的配置文件都读进来了,这样效率似乎低了一点
其实你即使不使用Config::get()来读取配置,laravel在入口文件的
$response = $kernel->handle(
$request = Illuminate\Http\Request::capture()
);
中就已经读取了所有的配置信息并保存在Illuminate\Config\Repository
的items数组里面了
所以这是属于框架的加载开销,并不是Config::get的开销
LS说的很对。
默认情况下全部加载肯定会耗那么一点点时间。不过laravel提供了artisan config:cache
可以对配置文件进行合并然后缓存,加载的开销就几乎为0了。
如果你的配置项目比较多,不想一次性加载进来,则可以考虑参考lumen里面的\Laravel\Lumen\Application::configure
实现,通过懒加载的方式来进行优化。
具体到“缓存全部” vs “懒加载” 就要具体情况具体分析了