今天在玩 Laravel 的时候,遇到了个问题,就是改了 view 里面的文件,在浏览器刷新没有立即看到效果。
起初我以为是浏览器缓存的问题,试一下强制刷新,还是没有效果。
然后猜想是不是因为文件缓存了,百度了一下怎么解决,有人说是因为开启了opcache,但是之前其他服务器也是一样开启了这个,所以我排除这个。
直到在网上看到了这句话,突然想到,服务器上面的时间比本地时间快了20分钟左右,会不会是因为这个原因,导致 Laravel 没有去更新view编译后的文件呢,改一下服务器时间,搞定!!!!
既然解决了问题,就看一下源代码吧
在这个文件 vendor/laravel/framework/src/Illuminate/View/Compilers 下找到了以上代码。
所以模板编译的过程有一个判断逻辑是,比对 view 文件