位置
5.4的时候,路由还在
app/Http/routes.php
5.6的时候就挪到 app 目录外的
routes/web.php
对于一个 MVC 框架,如何解析路由是非常重要的问题,这样变来变去真得好吗?
另外据悉,Laravel 路由是基于 Symfony的, Laravel 中比较慢的部分就应该就是路由了,基于 Laravel 的 Lumen 为了性能,放弃Symfony 路由组件转而使用 FastRoute,好消息是:
[Routing] Match 77.7x faster by compiling routes in one regexp by nicolas-grekas · Pull Request #26059 · symfony/symfony,
也就是说未来的 Symfony 4.1会提高路由性能,社区期望在将来的 Laravel 也会将 Symfony 组件更新到最新从而性能得到极大提升。此是提外话了,先憧憬着吧!
file_put_contents(path/to/storage/framework/views/xxxxxxx.php): failed to open stream: Permission denied
遇到这个错误的原因,一是权限问题,即storage目录权限不够;二是因为路由与action参数不对应;解决方案如下:
问题1:
chmod -R 777 storage/
或:
chown -r www:www storage
-问题2:检查路由设置与action参数,如:
Route::get(‘/knowlege/list/{var}’,’KnowlegeSystemController@index’)->name(‘teacher’);
对应的action:
class KnowlegeSystemController extends Controller
//
public function index( $var = 12)
var_dump($var);
转载请注明:XAMPP中文组官网 » 学习 Laravel 那些坑(四) 路由