CodeIgniter Composer“ package.json”位置应位于应用程序或根文件夹中?

时间:2018-09-30 02:44:35

标签: php codeigniter composer-php

我正在使用代码点火器v3.x,我想添加一些作曲家程序包。

查看application/config/config.php文件,它表示将在应用程序文件夹中加载程序包

| package auto-loader script in application/vendor/autoload.php.

但是在codeigniter软件包中,它已经有一个package.json可以在根文件夹中安装软件包。

我怀疑根目录上的package.json必须仅包含有关CodeIgniter自身的信息。但是我不确定。

所以我有三个选择:

  1. package.json文件夹中创建一个新的application,并在application内安装软件包。

  2. 通过添加新软件包并更改package.json的位置来修改根文件夹上的autoload.php

CodeIgniter应用程序会有什么期望?

1 个答案:

答案 0 :(得分:2)

好吧,如果您看一下Codeigniter文档,您会发现有一个名为composer_autoload的配置设置。可以在process substitution中找到此信息。

如果设置了此true,则Codeigniter会尝试将Composer的autoload.php加载到APPLICATION.'vendor'文件夹中。如果仔细查看here文件,您会发现也可以为此设置定义目录。

因此,在您的情况下,无需更改根文件夹中的package.json,因为在将composer_autoload设置为true的情况下,您需要在应用程序文件夹中更改其中的一个,我会推荐。

顺便说一句,如果您尝试通过composer在应用程序目录中安装软件包,则composer询问您是否要使用在根文件夹中找到的软件包-只需拒绝并按n

您可以在下面的图片中看到(我只是尝试安装mpdf软件包)。

Codeigniter.php