Composer入门及技术指南

初识Composer


参考素材
phpcomposer官网:Composer 中文网 / Packagist 中国全量镜像
在线官方文档:Composer 中文文档 | Composer 中文网

辅助工具
 

介绍

Composer是 PHP 用来管理依赖(dependency)关系的工具。

安装Composer

  • linux环境安装Composer

# curl -sS https://getcomposer.org/installer | php

1)下载composer
# curl -sS https://getcomposer.org/installer | php

 

 

 注:这个方法已经比较旧了,可能下载不成功,推荐下面方法(参考: Linux如何安装Composer-composer-PHP中文网

# php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"

# php composer-setup.php
注:其中可能会报错“error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed in Command line”,是由于php的openssl证书错误,可以参考如下

Windows下安装composer出错的原因_congjl2002的专栏-CSDN博客

下载相应的cacert.pem,并修改php.ini的[openssl]的相应位置openssl.cafile=的相应的路径

linux中 # cd ~ && wget http://curl.haxx.se/ca/cacert.pem

2)将composer.phar文件移动到bin目录以便全局使用composer命令

# mv composer.phar /usr/local/bin/composer
3)切换国内源
# composer config -g repo.packagist composer https://mirrors.aliyun.com/composer

注意以前用这个 composer config -g repo.packagist composer https://packagist.phpcomposer.com,但是Packagist / Composer 中国全量镜像镜像很不稳定,推荐用https://mirrors.aliyun.com/composer

查看当前使用镜像源:

# composer config -gl

注意,最新版composer 2.0.13,可能需要恢复原来源配置,不然可能会遇到报错如“Root composer.json requires elasticsearch/elasticsearch, it could not be found in any version, there”

# composer config -g repo.packagist composer https://packagist.org

 4)输入composer验证:

# composer -v

Composer安装成功

其他composer 命令

# composer config -l -g     //包来源地址查询命令

composer升级

有时版本太旧时会提示“You are using an outdated version of Composer. Composer 2 is now available and you should upgrade. ”,我们可以执行如下指令

# composer self-update --2

就可以升级到2.x版本

使用Composer

当前目录下,建立composer.json文件,将需要引入的依赖包编写如下,下面举个最简单的引入依赖包predis,如下

{
    "require": {
        "predis/predis": "^1.1"
    }
}

其中require中包含的是资源包名称和版本,如 "predis/predis": "^1.1",可以在网站https://packagist.org中查询,如下:

查询到匹配的包名、版本名,填入即可。 

在当前目录下执行安装依赖包

# composer install

查看安装目录

发现多了个vendor目录,这里就是下载的predis依赖包

执行后会生成一个composer.lock,说明是第一次安装composer资源包锁定标记。如果再需要下载其他的资源包,我们修改资源包配置文件composer.json,添加需要的资源包后,则需要命令如下:

# composer update

这样会继续下载需要的资源包。

代码中引用依赖包,使用相应包中的类及方法,举例如下如下

//引入依赖包
require  "vendor/autoload.php";

//从缓存当中读取,可以更新的,根据集群状态更新
$parameters = ['127.0.0.1:6392', '127.0.0.1:6393', '127.0.0.1:6394'];
$options    = ['cluster' => 'redis'];
$client = new Predis\Client($parameters, $options);

基本指令

 composer install     //首次在生产环境中,需要安装依赖库

composer dump-autoload  //首次在生产环境中需要编译执行一下,加载依赖库

Windows版安装

参考网址:[php]Windows环境下Composer的安装教程 - landv - 博客园

composer下载地址:https://getcomposer.org/Composer-Setup.exe

composer.phar下载地址:简书

composer版本降级命令:composer self-update --1

问题记录

  • composer运行报错“[Composer\Downloader\TransportException]” 

原因:被墙了! 更改composer配置切换到国内composer源 

解决:composer config -l -g

在[home]配置项 得到composer配置路径 
修改config.json文件为

{
    "config": {},
    "repositories": [
      {"type": "composer", "url": "http://pkg.phpcomposer.com/repo/packagist/"},
      {"packagist": false}
    ]
}
有时镜像地址也是会挂了的,可以换用Laravel China 镜像完成历史使命,将于两个月后停用 | PHP 技术论坛(这个已停用了)

也可以这样添加(这个已停用了)

composer config -g repo.packagist composer https://packagist.laravel-china.org

持续完善,待续...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云焰

你的鼓励是我创作的最大动力。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值