这里是文章模块栏目内容页
用composer dump-autoload 命令增加thinkphp的类自动加载目录

很多时候,发现thinkphp 的命名空间,自动加载目录是被定在了 app目录里面。

用什么办法可以增加另外一个命名空间呢?

例如addons\controller ?

其实composer 工具是可以实现增加命名空间的配置办法的。

在您项目的根目录中打开 composer.json ,找到 autoload 项; 默认如下所示:

"autoload": {
        "psr-4": {
            "app\\": "app"           
        },
        "psr-0": {
            "": "extend/"
        }

增加命名空间 addons,需要在psr-4 字段新增项目:

"autoload": {
        "psr-4": {
            "app\\": "app",
            "addons\\":"addons"
        },
        "psr-0": {
            "": "extend/"
        }

然后,运行命令:

$ composer dump-autoload

这样成功把 addons\开始的命名空间,实现了类的自动加载。

当你在app里面的任何目录中的类,只要申明 use addons\controller\Admin;

那么,就可以调用起这个Admin类。用法完全和app里面的一致。


好了,本文内容全部结束,感谢您的阅读,希望对您有所帮助。