工具&利器技术&日志问答

composer

了解Composer

Composer是PHP中依赖关系管理的工具。它允许您声明项目所依赖的库,它将为您管理(安装/更新)它们. 官方网站

关于composer包的类型

composer 原生支持以下4种类型:

  • library:
    这是默认类型,它会简单的将文件复制到
    vendor
    目录。
  • project:
    这表示当前包是一个项目,而不是一个库。例:框架应用程序
    Symfony standard edition
    ,内容管理系统
    SilverStripe installer
    或者完全成熟的分布式应用程序。使用 IDE 创建一个新的工作区时,这可以为其提供项目列表的初始化。
  • metapackage:
    当一个空的包,包含依赖并且需要触发依赖的安装,这将不会对系统写入额外的文件。因此这种安装类型并不需要一个 dist 或 source。
  • composer-plugin:
    一个安装类型为
    composer-plugin
    的包,它有一个自定义安装类型,可以为其它包提供一个 installler。详细请查看
    自定义安装类型

仅在你需要一个自定义的安装逻辑时才使用它。建议忽略这个属性,采用默认的library。[更多]

版本符号

^1.2.3 表示 >=1.2.3 <2.0.0

^0.3 表示 >=0.3.0 <0.4.0

中文说明官方说明

安装Composer

Liunx

ubuntu16.04.12 LTS

tip: lnmp一键安装Composer官网

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

Windows

开始使用

如何制作一个composer? ok

如何上传一个composer包? ok

如何测试?

提交到packagist.org时会有缓存, 在使用composer update要等几分钟才可以更新

安装包或添加包

添加包[已有安装有的包,再增加新的包]

composer require monolog/monolog

移除包

composer remove monolog/monolog 供应商名称和其项目名称

或者是:删掉依赖包那一行, 运行composer update

详情用法


composer包本地开发调试与自动拉取github tip: 有问题未解决


如果全局中设置了第三方镜像, 需要等待第三方镜像同步后才能找到你的依赖库.

相关查阅资料

[1] 如何创建一个可以用composer安装的php包

[2] 解释所有在 composer.json 中可用的字段