Composer – PHP的春天依赖管理的新时代

别再到处搜 PHP 类扩展包了,对于现代语言而言,包管理器基本上是标配。Java 有 Maven,Python 有 pip,Ruby 有 gem,Nodejs 有 npm。PHP 的则是 PEAR,不过 PEAR 坑不少:

  • 依赖处理容易出问题
  • 配置非常复杂
  • 难用的命令行接口

好在我们有 Composer,PHP 依赖管理的利器。它是开源的,使用起来也很简单,提交自己的包也很容易。

举个例子,平时我们开始的时候如果不是用框架,想要一个验证码,就要先去 Gihutb 或者其他地方找一个验证码类,然后在项目中 include 一下,再编辑编辑就跑起来了,以至于到后期项目维护都可能会出现问题。在 Github 上开源的,那还能点个 watch,看到有 Bug 修复或新版本发布,能及时跟着升级。

如果下载的扩展包多了,就需要各种 include 了,还有可能出现命名空间冲突的问题,又要根据项目去更改命名空间,如果扩展包升级了,又要重新下载编辑,这是十分不方便的。所以 Composer 依赖管理库就这样诞生了。

上面就是 Compser 比较重要的需求场景。

  1. 能方便安装升级扩展包
  2. 只 include 就行,不用到处写 include
  3. 避免命名空间的冲突

平时都去 Github、码云等平台上找扩展包,而现在也有一个网站把所有包综合起来,也就说现在的开发方式:首先在packagist上搜索,然后用 Composer 安装升级。

安装 Composer

傻瓜式安装的话就是直接点击https://getcomposer.org/Composer-Setup.exe,下载安装就行了,安装程序将为你下载 Composer 并设置你的 PATH 环境变量,以便你可以简单地 Composer 从任何目录调用。

安装的过程中需要注意的是要找到 php.exe 的根目录,选择正确的 PHP 路径。这里就不提供截图了,因为我也没下好,而且我也是手动安装的。

选择目录应该是这样的:

D:\phpStudy\php\php-7.0.12-nts\php.exe

下面还是着重介绍手动安装的,我觉得这种方法十分好用:

先下载一个 composer.phar 文件,将 phar 文件放在 developer 文件夹中,这个你随意,不限制放在哪个文件夹中。

然后打开 DOS 窗口,或者快捷键 windows+R 输入 cmd,使用以下命令,先要进入到你放置 phar 文件的目录

D:\developer\composer>echo @php "%~dp0composer.phar"%*>composer.bat

安装成功以后会在同级目录下生成一个 composer.bat 的文件。

手动安装 composer-phar
手动安装 composer-phar

安装成功的标志就是在命令行输入

composer -v

显示如下内容

composer 安装成功
composer 安装成功

然后将 Composer 的路径加入到系统的环境变量中。至于环境变量怎么搞,那就百度吧。

看到这里我就都当成 Composer 已经安装成功了,在中国局域网内,使用 Composer 是比较慢的,不过好在国内有镜像,执行如下命令切换到国内的镜像,国内镜像所做的就是缓存所有安装包和元数据到国内的机房并通过国内的 CDN 进行加速,这样就不必再去向国外的网站发起请求。

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

这样做就相当于全局更改了配置,我选择修改当前项目的 composer.json 的配置文件:

{
    "repositories": {
        "packagist": {
            "type": "composer",
            "url": "https://packagist.phpcomposer.com"
        }
    }
}

OK,一切搞定!试一下 composer install 来体验飞一般的速度吧!

相关网址:

扩展业务 | 沈唁志

2 条评论

发表评论

*