手工下载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