Windows 环境下如何安装 Composer

什么是 Composer

Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库(各种 PHP 的第三方依赖包,甚至是 PHP 框架),它可以为你轻松快捷地安装它们。

此外,Composer 会为项目中的所有 PHP 组件自动生成符合 PSR 标准的自动加载器,抽象了依赖管理和自动加载。

安装 Composer

准备工作: 安装 Composer 前,请确保已经正确安装了 PHP(需要 PHP 相关模块扩展的支持)。打开命令行窗口,执行 php -v 查看是否可以正确输出 PHP 的版本号。

点击 Composer-Setup.exe 下载安装包,双击安装最新版本的 Composer。(推荐全局安装)

也可自行到官网 https://getcomposer.org/ 下载自己喜欢的 composer 版本。

测试是否安装成功

打开 Windows 系统的命令行,输入 composer 命令,如果看到关于 Composer 的一些介绍和命令,则说明 Composer 安装成功。

或者,输入以下命令:

# 查看 composer 的版本 
composer -V			 

如何在项目中安装需要的代码库?

例如:你创建了一个项目,项目根目录为 E:\xampp\htdocs\demo,你需要一个库来做日志记录。 假如你比较了解 monolog,决定使用 monolog。

首先,你需要在项目根目录中创建一个 composer.json 文件,其中描述了项目的依赖关系。内容如下:

{
    "require": {
        "monolog/monolog": "1.2.*"
    }
}

其次,打开 cmd 命令行,切换到项目根目录,输入命令:composer install ,如果没有报错,等候 1 分钟左右,就会提示下载成功。

monolog 就会下载到项目根目录(E:\xampp\htdocs\demo )下的 vendor 目录中。

依赖代码库中类文件的自动加载

Composer 准备了一个自动加载文件(vendor 目录下的 autoload.php 文件),它可以加载 Composer 下载的库中所有的类文件。使用该自动加载器,就可在你的项目中轻松引入由 Composer 安装的 PHP 组件。

你只需要将下面这行代码添加到项目的引导文件中:

require_once __DIR__ . '/vendor/autoload.php';

之后,就可以在项目中直接使用 Composer 下载的库,如 monolog。

$log = new Monolog\Logger('name');
$log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING));
$log->addWarning('Foo');
$log->addError('Bar');

使用国内镜像加快下载速度

默认情况下,依赖包的镜像仓库地址为 packagist 官方源 (https://packagist.org),一般会从 github.com 上下载源文件。

我们都知道,国外的网站连接下载速度可能会比较慢,并且随时可能被“墙”。故推荐采用国内的镜像仓库地址。

配置国内镜像

国内的 composer 镜像仓库地址,强烈推荐使用 阿里云 Composer 全量镜像 。

它提供的镜像仓库地址为 https://mirrors.aliyun.com/composer/

# -g 表示全局,它会修改 composer 的全局配置文件 config.json
# 强烈推荐使用全局配置
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

取消镜像配置

如果需要取消自行配置的镜像仓库地址并恢复为默认的 packagist 官方源,可以执行下面的命令。

composer config -g --unset repos.packagist

查看 composer 的全局配置

composer config  -g --list

此时,composer 会利用默认值(也就是官方源)重置源地址。

常用命令

composer install

依据当前目录下的 composer.lock(锁文件) 或 composer.json 文件所定义的依赖关系,安装依赖包。install 命令会先检查锁文件是否存在,如果存在,它将下载 composer.lock 文件中指定的版本,而忽略 composer.json 文件中的定义。

composer update

如果你想更新你的依赖版本或者说你修改了 composer.json 中的依赖关系,想让 composer 按照 composer.json 文件中的定义执行更新操作,就用 composer update 命令。

composer require

require 命令一般用来安装新的依赖包,并将依赖写入当前目录的 composer.json 文件中。

如果 composer.json 文件中,添加或改变了依赖,修改后的依赖关系将被安装或者更新。

composer require

你也可以直接在命令中指明需要安装的依赖包。

composer require barryvdh/laravel-ide-helper

安装指定版本的依赖包。

composer require barryvdh/laravel-ide-helper:1.0

--dev 选项和 require-dev 相对应。如果你的依赖包仅仅用于开发环境,建议加上 --dev 选项。

composer require --dev barryvdh/laravel-ide-helper

composer selfupdate

更新 composer 本身,请经常执行 composer selfupdate 以保持 Composer 一直是最新版本。

 

你可能感兴趣的:(PHP)