在yii2中没有检测到外部库(Phpoffice)

时间:2018-04-27 07:18:17

标签: yii yii2 composer-php phpoffice

两台计算机正在使用SAME存储库,但第一台计算机检测到该库并运行良好,但第二台计算机未检测到它并显示“错误'PhpOffice \ Phpspreadsheet \ Reader \ Xlsx'未找到”。

在供应商中,该库也存在。

composer.json和composer.lock在两台计算机上都是一样的。

有一点是,通过git忽略,我在第一台计算机上使用yii的作曲机制,但在第二台计算机(错误的计算机),我手动添加库。

2 个答案:

答案 0 :(得分:1)

如果您想使用composer包,则绝对需要使用composer进行安装。这可以确保正确生成自动加载器,并且可以通过PHP找到您的类。

答案 1 :(得分:1)

将库文件复制到vendor目录不足以安装它。在安装过程中,Composer会创建自动加载脚本,其中包含有关如何查找Composer安装的所有类的信息。如果您只是复制库文件,Composer甚至不会知道它存在,也无法从中加载任何类。

如果您无法在服务器/计算机A上使用Composer,则应将所有依赖项安装在不同的计算机上(B)并将整个vendor目录复制到服务器/计算机A.自动加载定义位于vendor所以如果你复制整个dorectory它应该工作。