在php中使用Composer自动加载文件或者文件夹

2438人浏览 2020-09-28

在PHP中经常需要加载外部的类文件之类的,结合Composer的自动加载后,将是非常轻松且高效的一件事。

1.安装composer ,忽略,请自行安装(链接

2.如果你的项目本地以及有了composer.json文件忽略这一步,如果没有使用过composer,请使用"composer init" 命令 直接默认回车即可。

切换到项目根目录:

composer init

执行完毕,在你的项目根目录会有composer.json文件。

3.自动加载文件。

  假设在项目根目录有lib/functions.php文件,需要在项目中自动加载。编辑composer.json文件

"autoload": {
   "files": ["lib/function.php"]
}

说明:找到“autoload”节点,如果没有,复制加上,files对应的即需要自动加载的文件(数组格式),若有多个,用逗号隔开。

4.自动加载文件夹。

  假设根目录下有lib/Test.php类文件需要自动加载。编辑composer.json文件

"autoload": {
    "psr-4": {
      "Lib\\": "lib"
    },
    "files": ["lib/functions.php"]
}

说明:以上会自动加载根目录下lib文件夹下的类文件,“psr-4”对应的为需要自动加载的文件夹,lib下的类要注意命名空间,如Test.php命名空间应为:

namespace Lib;

5.自动加载

在根目录执行:

composer dump-autoload

之后可在项目直接使用类或者functions的方法。

搜索文章