美文网首页
第三讲:Win7下安装Composer

第三讲:Win7下安装Composer

作者: iStudyBoy | 来源:发表于2018-10-24 22:30 被阅读115次

一、Windows下安装Composer

Composer是 PHP用来管理依赖关系(dependency)的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer会帮你安装这些依赖的库文件。

我们打开Composer 中文网的下载下载页面,下载Composer安装包。然后一路next安装就行了。

安装过程中会自动搜索php.exe的安装路径,如果没有,就手动选择php下的php.exe安装路径。并且它会同时自动设置好系统的环境变量,因此你可以在任何目录下直接使用composer命令。

打开一个新的命令行窗口进行测试是否安装成功:

C:\Users\Administrator>composer -V
Composer version 1.7.2 2018-08-16 16:57:12

如果有上面的类似输出,说明已经安装成功了。

我想你一定有一个疑问,那就是运行Composer命令后,是从哪里下载依赖文件呢?是从Packagist!Packagist 是Composer默认的中央仓库。

由于众所周知的原因,国外的网站连接速度很慢,并且随时可能被“墙”甚至“不存在”,我们这里修改composer的全局配置文件,使用Packagist / Composer中国全量镜像。打开CMD并执行如下命令:

composer config -g repo.packagist composer https://packagist.phpcomposer.com

二、如何使用Composer

要在项目中使用Composer,我们只需要一个composer.json文件。该文件包含了项目的依赖和其它的一些元数据。而composer.json文件使用的是JSON format。我们下面就把几个常用的语法格式介绍一下:

1. require

第一件事情(并且往往只需要做这一件事),你需要在composer.json文件中指定require key的值,告诉 Composer你的项目需要依赖哪些包。比如我们在D:\WWW\Test下新建一个composer.json文件,内容如下:

{
    "require": {
        "twig/twig": "^1.34"
    }
}

你可以看到, require需要一个包名称(twig/twig)映射到包版本(1.34) 的对象。包名称供应商名称和其项目名称构成。它允许两个不同的人创建同样名名称的库,这样很好的解决了命名冲突的问题。

下面重点介绍一下版本约束写法。

名称 实例 描述
确切的版本号 1.0.2 你可以指定包的确切版本。
范围 >=1.0 >=1.0,<2.0 >=1.0,<1.1 | >=1.2 通过使用比较操作符可以指定有效的版本范围。 有效的运算符:>、>=、<、<=、!=。 你可以定义多个范围,用逗号隔开,这将被视为一个逻辑AND处理。一个管道符号|将作为逻辑OR处理。 AND 的优先级高于 OR。
通配符 1.0.* 你可以使用通配符来指定一种模式。1.0.与>=1.0,<1.1是等效的。
波浪运算符 ~1.2 ~1.2相当于>=1.2,<2.0。
抑扬符 ^1.2 ^和~的意思很接近,在x.y的情况下都是代表x.y <= 版本号 < (x+1).0,但是在版本号是x.y.z的情况下有区别,举个例子:~1.2.3 代表 1.2.3 <= 版本号 < 1.3.0;而 ^1.2.3 代表 1.2.3 <= 版本号 < 2.0.0

Twig是一款灵活、快速、安全的PHP模板引擎。

现在我们打开CMD,定位到D:\WWW\Test然后输入composer install,过一会儿就会发现Test目录中多了一个vendor文件夹和composer.lock文件。进入vendor目录,会发现下面有composersymfonytwig三个文件夹和一个autoload.php文件。

2. composer.lock(锁文件)

在安装依赖后,Composer把安装时确切的版本号列表写入composer.lock文件。这将锁定该项目的特定版本。因此在提交应用程序时,必须把composer.lockcomposer.json一起提交到版本库中。因为 install命令将会检查锁文件是否存在,如果存在,它将下载指定的版本(忽略 composer.json 文件中的定义)。

这意味着,任何人建立项目都将下载与指定版本完全相同的依赖。如果不存在锁文件,Composer将读取composer.json并创建锁文件。

这意味着如果你的依赖更新了新的版本,你将不会获得任何更新。此时要更新你的依赖版本请使用update命令。这将获取最新匹配的版本(根据你的composer.json文件)并将新版本更新进锁文件。

如果只想安装或更新一个依赖,你可以白名单它们:php composer.phar update monolog/monolog [...]

相关文章

网友评论

      本文标题:第三讲:Win7下安装Composer

      本文链接:https://www.haomeiwen.com/subject/hkoxtqtx.html