安装命令 composer require endroid/qrcode
安装完毕该目录下会自动生成vendor
目录和composer.json
、composer.lock
文件,截图如下:
其中font
目录是我后面加入的字体文件放置目录,index.php
是本次测试调用入口文件。composer安装完毕,QrCode的类文件就按照composer的规则自动存放在vendor
目录下了,打开vendor目录你会发现有个autoload.php
文件和几个文件夹,这几个文件存放的就是各种类库文件了。vendor目录结构如下:
其中composer目录是composer这个工具所实现的php自动加载器,endroid目录就是本次QrCode的类库文件了,而symfony目录则是endroid依赖的另外一个php类库,安装QrCode库时symfony会自动安装,不用手动处理依赖关系。而autoload.php
文件则是composer自动为我们处理好的php类加载器,我们要调用由composer安装的某个类时,引用这个文件即可,不用再去include一堆文件了,这就是命名空间与文件存储路径按一定规则一一对应,并利用php的spl_autoload_register
函数实现的自动加载机制实现各个类的自动加载功能,所以我们要调用由composer安装的类时只需要引入autoload.php
这个加载器文件就可以了。如果我们自己的项目也有自动加载器也并不影响,这就是spl_autoload_register
这个函数的好处了,可以存在多个加载器。