Composer 安装

Composer 可以通过多种方式在您的系统上安装 CodeIgniter4。

重要

CodeIgniter4 需要 Composer 2.0.14 或更高版本。

注意

如果您不熟悉 Composer,我们建议您先阅读 基本用法

第一种技术描述了使用 CodeIgniter4 创建一个骨架项目,然后您可以将其用作新 Web 应用程序的基础。下面描述的第二种技术可以让您将 CodeIgniter4 添加到现有的 Web 应用程序中。

注意

如果您使用 Git 仓库来存储代码或与他人协作,那么 **vendor** 文件夹通常会被“git 忽略”。在这种情况下,您需要在将仓库克隆到新系统时执行 composer update 命令。

应用程序启动器

CodeIgniter 4 应用程序启动器 仓库包含一个骨架应用程序,它依赖于 Composer 对最新发布的框架版本的依赖。

这种安装技术适合希望启动一个新的基于 CodeIgniter4 的项目的开发人员。

安装

在您的项目根目录的上级文件夹中

composer create-project codeigniter4/appstarter project-root

上面的命令将创建一个 **project-root** 文件夹。

如果您省略“project-root”参数,该命令将创建一个“appstarter”文件夹,您可以根据需要将其重命名。

注意

在 v4.4.0 之前,CodeIgniter 自动加载器不允许在某些操作系统上使用文件名中非法的特殊字符。可以使用以下符号:/_.:\ 和空格。因此,如果您将 CodeIgniter 安装在包含特殊字符(如 () 等)的文件夹下,CodeIgniter 将无法正常工作。从 v4.4.0 开始,此限制已被移除。

重要

当您部署到生产服务器时,请不要忘记运行以下命令

composer install --no-dev

上面的命令将仅删除开发环境中不需要的 Composer 包。这将大大减小 vendor 文件夹的大小。

初始配置

安装完成后,需要进行一些初始配置。有关详细信息,请参见初始配置

升级

每当有新版本发布时,请在项目根目录的命令行中

composer update

阅读升级说明,并检查重大变更和增强功能。

优点

安装简单;易于更新。

缺点

您仍然需要检查**项目空间**(根目录、app、public、writable)中的文件更改,并在更新后合并它们。

注意

有一些第三方 CodeIgniter 模块可用于帮助合并对项目空间的更改:在 Packagist 上探索

结构

设置后项目中的文件夹

  • app、public、tests、writable

  • vendor/codeigniter4/framework/system

最新开发版

App Starter 仓库附带一个builds脚本,用于在框架的当前稳定版本和最新开发分支之间切换 Composer 源。对于愿意使用最新未发布的更改(可能不稳定)的开发人员,请使用此脚本。

可以在线访问开发人员用户指南。请注意,这与发布的用户指南不同,并且将明确适用于开发分支。

更新到最新开发版

在项目根目录中

php builds development

上面的命令将更新**composer.json**以指向工作仓库的develop分支,并在配置和 XML 文件中更新相应的路径。

使用 builds 命令后,请确保运行 composer update 以将您的 vendor 文件夹与最新的目标构建同步。然后,查看 从先前版本升级 并根据需要更新项目文件。

下一个次要版本

如果您想使用下一个次要版本分支,在使用 builds 命令后,手动编辑 composer.json

如果您尝试 4.4 分支,请将版本更改为 4.4.x-dev

"require": {
    "php": "^7.4 || ^8.0",
    "codeigniter4/codeigniter4": "4.4.x-dev"
},

并运行 composer update 以将您的 vendor 文件夹与最新的目标构建同步。然后,查看升级指南 (user_guide_src/source/installation/upgrade_{version}.rst) 并根据需要更新项目文件。

恢复到稳定版本

要恢复更改,请运行

php builds release

将 CodeIgniter4 添加到现有项目

在“手动安装”中描述的相同 CodeIgniter 4 框架 存储库也可以使用 Composer 添加到现有项目。

安装

app 文件夹中开发您的应用程序,public 文件夹将是您的文档根目录。

在项目根目录中

composer require codeigniter4/framework

重要

当您部署到生产服务器时,请不要忘记运行以下命令

composer install --no-dev

The above command will remove the Composer packages only for development
that are not needed in the production environment. This will greatly reduce
the vendor folder size.

设置

  1. apppublictestswritable 文件夹从 vendor/codeigniter4/framework 复制到您的项目根目录

  2. envphpunit.xml.distspark 文件从 vendor/codeigniter4/framework 复制到您的项目根目录

  3. 您需要调整 **app/Config/Paths.php** 文件中的 $systemDirectory 属性,使其指向 vendor 目录,例如:__DIR__ . '/../../vendor/codeigniter4/framework/system'

初始配置

需要进行一些初始配置。有关详细信息,请参阅 初始配置

升级

每当有新版本发布时,请在项目根目录的命令行中

composer update

阅读升级说明,并检查重大变更和增强功能。

优点

安装相对简单;易于更新。

缺点

更新后,您仍然需要检查 **项目空间**(根目录、app、public、writable)中的文件更改。

注意

有一些第三方 CodeIgniter 模块可用于帮助合并对项目空间的更改:在 Packagist 上探索

结构

设置后项目中的文件夹

  • app、public、tests、writable

  • vendor/codeigniter4/framework/system

翻译安装

如果您想利用系统消息翻译,可以以类似的方式将它们添加到您的项目中。

从项目根目录中的命令行

composer require codeigniter4/translations

这些将在您执行 composer update 时与框架一起更新。