在学习PHP命名空间和自动加载类的时候遇到如下问题怎么解决

我在学习php自动加载和mvc时,遇到如下问题
https://img.mukewang.com/5c8f530f0001a26008000275.jpg

如上图,想要实现通过访问链接index.php输入c和m进行方法跳转。但是访问报错
https://img1.mukewang.com/5c8f531000016af007010458.jpg
输入c=Controller和m=index,实际访问Controller类下面的index方法,但是提示不存在。
https://img4.mukewang.com/5c8f53110001274805920289.jpg

这是我的composer配置,没问题。

但是如果直接在index创建了Controller类的话,就没问题,可以直接调用。用require引用文件,也没问题。加上namespace就会出现报错。为什么嘞?

慕容708150
浏览 472回答 6
6回答

郎朗坤

use对于“可变类名(变量类名)”无效,要拼class的命名空间全路径

月关宝盒

执行了composer dump-autoload了么

胡子哥哥

变量类名实例化时不读取use命名空间 要写全路径

守候你守候我

这.....

HUX布斯

文件名改成Controller.class.php试试。

达令说

直接class Controller?中间的类名跑哪去了?
打开App,查看更多内容
随时随地看视频慕课网APP