命令简单解释

  • 正确的 Composer 扩展包安装方法

  • composer install - 如有 composer.lock 文件,直接安装,否则从 composer.json 安装最新扩展包和依赖;

  • composer update - 从 composer.json 安装最新扩展包和依赖;

  • composer update vendor/package - 从 composer.json 或者对应包的配置,并更新到最新;

  • composer require new/package - 添加安装 new/package, 可以指定版本,如: - composer require new/package ~2.5.

指定版本

  • composer require monolog/monolog 1.9.3

流程一:新项目流程

  1. 创建 composer.json,并添加依赖到的扩展包;

  2. 运行 composer install,安装扩展包并生成 composer.lock;

  3. 提交 composer.lock 到代码版本控制器中,如:git;

流程二:项目协作者安装现有项目

  1. 克隆项目后,根目录下直接运行 composer install 从 composer.lock 中安装 指定版本 的扩展包以及其依赖;

  2. 此流程适用于生产环境代码的部署。

流程三:为项目添加新扩展包

  1. 使用 composer require vendor/package 添加扩展包;

  2. 提交更新后的 composer.json 和 composer.lock 到代码版本控制器中,如:git;

关于 composer.lock 文件

  • composer.lock 文件里保存着对每一个代码依赖的版本记录,提交到版本控制器中,并配合 composer install 使用,保证了团队所有协作者开发环境、线上生产环境中运行的代码版本的一致性。

Composer 将这样为你解决问题

a) 你有一个项目依赖于若干个库。

b) 其中一些库依赖于其他库。

c) 你声明你所依赖的东西。

d) Composer 会找出哪个版本的包需要安装,并安装它们(将它们下载到你的项目中)。

Composer 将注册一个 PSR-4 autoloader 到 Acme 命名空间

  • 你可以在 composer.json 的 autoload 字段中增加自己的 autoloader

  • 你可以定义一个从命名空间到目录的映射。此时 src 会在你项目的根目录,与 vendor 文件夹同级。例如 src/Foo.php 文件应该包含 Acme\Foo 类。

    自动加载

    • 对于库的自动加载信息,Composer 生成了一个 vendor/autoload.php 文件。你可以简单的引入这个文件,你会得到一个免费的自动加载支持。

require ‘vendor/autoload.php’;

安装依赖

  • 安装依赖非常简单,只需在项目目录下运行: composer install

  • 如果没有全局安装的话,则运行:php composer.phar install

仅更新单个库

  • 只想更新某个特定的库,不想更新它的所有依赖,很简单:composer update foo/bar
说点什么吧...