手工下载php的composer软件包,如何让项目自动加载包里的类

有的时候需要手工下载php的composer包

1.将下载好的包放到项目的vendor目录下,比如包名topthink/think-view

2.然后查看软件包目录(vendor/topthink/think-view)下的composer.json文件,找到autoload,

这个key下面的配置就是该软件包里的类所需的自动加载类,

把里面的配置都复制到项目根目录下的composer.json的autoload下,

复制过来的配置需要修改相对路径,不然找不到相应的类文件。

3.在项目根目录下执行命令composer dump-autoload 重新生成自动加载的map。

4.此时在项目代码中就可以直接use 相应的类了。

//举例
//加内容之前
"autoload": { "psr-4": { "app\\": "app" }, "psr-0": { "": "extend/" } },
...
//psr-0和psr4是自动加载规范
//[PSR-0]规范已被弃用 - 此规范已于2014年10月21日被标记为弃用,目前最新的替代规范为 [PSR-4]
"autoload": {
        "psr-4": {
            "app\\": "app",
       // 增加的topthink/think-view包
"think\\view\\driver\\": "vendor/topthink/think-view/src", "think\\": "vendor/topthink/think-template/src" }, "psr-0": { "": "extend/" }, "classmap": [
        //
我要加一个PHPExcel库,增加一个classmap,然后填写它的文件位置
        "extend/library/PHPExcel-1.8.2/Classes"
     ]
}

 

原文: https://www.cnblogs.com/dongruiha/p/9909504.html

posted @ 2021-12-01 16:27  ×千  阅读(335)  评论(0编辑  收藏  举报