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

