前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Composer介绍

Composer介绍

作者头像
wangxl
发布于 2018-03-08 03:58:12
发布于 2018-03-08 03:58:12
1.3K00
代码可运行
举报
文章被收录于专栏:PHP在线PHP在线
运行总次数:0
代码可运行

Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。

依赖管理

Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。

这种想法并不新鲜,Composer 受到了 node 的 npm和 ruby 的 bundler 的强烈启发。而当时 PHP 下并没有类似的工具。

Composer 将这样为你解决问题:

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

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

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

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

声明依赖关系

比方说,你正在创建一个项目,你需要一个库来做日志记录。你决定使用 monolog。为了将它添加到你的项目中,你所需要做的就是创建一个 composer.json 文件,其中描述了项目的依赖关系。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{    
"require": 
{"monolog/monolog": "1.2.*"}
}

我们只要指出我们的项目需要一些 monolog/monolog 的包,从 1.21.3 之间的最高版本。

系统要求

运行 Composer 需要 PHP 5.3.2+ 以上版本。一些敏感的 PHP 设置和编译标志也是必须的,但对于任何不兼容项安装程序都会抛出警告。

我们将从包的来源直接安装,而不是简单的下载 zip 文件,你需要 git 、 svn 或者 hg ,这取决于你载入的包所使用的版本管理系统。

Composer 是多平台的,我们努力使它在 WindowsLinux 以及 OSX 平台上运行的同样出色。

下载 Composer 的可执行文件

局部安装

要真正获取 Composer,我们需要做两件事。首先安装 Composer (同样的,这意味着它将下载到你的项目中):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl -sS https://getcomposer.
org/installer | php

注意: 如果上述方法由于某些原因失败了,你还可以通过 php >下载安装器:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
php -r "readfile('https://getcomposer.
org/installer');" | php

这将检查一些 PHP 的设置,然后下载 composer.phar 到你的工作目录中。这是 Composer 的二进制文件。这是一个 PHAR 包(PHP 的归档),这是 PHP 的归档格式可以帮助用户在命令行中执行一些操作。

你可以通过 --install-dir 选项指定 Composer 的安装目录(它可以是一个绝对或相对路径):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl -sS https://getcomposer.
org/installer | php -- --install-dir
=bin
全局安装

你可以将此文件放在任何地方。如果你把它放在系统的 PATH 目录中,你就能在全局访问它。 在类Unix系统中,你甚至可以在使用时不加 php 前缀。

你可以执行这些命令让 composer 在你的系统中进行全局调用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl -sS https://getcomposer
.org/installer | php
mv composer.phar /usr/local/bin/composer

注意: 如果上诉命令因为权限执行失败, 请使用 sudo 再次尝试运行 mv 那行命令。

现在只需要运行 composer 命令就可以使用 Composer 而不需要输入 php composer.phar

全局安装 (on OSX via homebrew)

Composer 是 homebrew-php 项目的一部分。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
brew update
brew tap josegonzalez/homebrew-php
brew tap homebrew/versions
brew install php55-intl
brew install josegonzalez/php/composer

使用 Composer

现在我们将使用 Composer 来安装项目的依赖。如果在当前目录下没有一个 composer.json 文件,请查看基本用法章节。

要解决和下载依赖,请执行 install 命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
php composer.phar install

如果你进行了全局安装,并且没有 phar 文件在当前目录,请使用下面的命令代替:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
composer install

继续 上面的例子,这里将下载 monolog 到 vendor/monolog/monolog 目录。

自动加载

除了库的下载,Composer 还准备了一个自动加载文件,它可以加载 Composer 下载的库中所有的类文件。使用它,你只需要将下面这行代码添加到你项目的引导文件中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
require 'vendor/autoload.php';

现在我们就可以使用 monolog 了!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-01-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 php 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
composer的使用
Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。
老雷PHP全栈开发
2020/07/02
6050
Yii2中对Composer的使用
若使用Composer我们应该先知道这是一个什么东西,主要干什么用的,我们可以把Composer理解为PHP包的管理工具,管理我们用到的Yii2相关的插件。
PHP学习网
2022/08/03
9630
使用PHPStorm+Composer快速初始化项目
使用PHPStorm创建项目,这个我就不再废话了。 无论你是通过版本控制系统checkout一个项目;还是直接 create一个本地项目;或者create一个远程项目 ... ... 俺都不care。Just do it。
luxixing
2019/05/29
3.1K0
Composer安装与配置
Composer,作为PHP的依赖管理工具,极大地简化了PHP项目中第三方库的安装、更新与管理过程。本文将详细介绍Composer的安装步骤、基本配置方法,以及一些实用的操作示例,帮助读者快速上手并熟练运用Composer。
Jimaks
2024/04/12
1.8K0
Composer使用体验
简单来说,Composer是PHP的包依赖管理器。但是Composer并不是类似于Yum、Apt的包管理器。Composer可以用于包或者第三方库的安装,但是可以选择在Project范围内进行安装。Composer是受到Node的NPM启发。
大江小浪
2019/02/22
5250
Composer系列之一
比如我在开发一个php网站,突然需要二维码生成功能,自己写太麻烦,这个时候我可以去composer的扩展列表里看一看,如果有直接下载下来用就可以了,当然可能这个扩展还需要另外一个扩展或库。
botkenni
2019/09/03
4920
Composer安装和使用
Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们,它好比是nodejs中的npm,很轻松一个命令就可以把他人优秀的代码用到我们的项目中来,而且很容易管理依赖关系,更新删除等操作也很轻易的实现。
用户1739228
2022/08/30
1.8K0
Composer安装和使用
Compoer介绍
Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。
_春华秋实
2019/02/22
8210
如何在 Ubuntu 20.04 上安装和使用 Composer
本文最先发布在:https://www.itcoder.tech/posts/how-to-install-and-use-composer-on-ubuntu-20-04/
雪梦科技
2020/06/22
5.9K0
Laravel框架学习 -- 安装
Laravel 利用 Composer(Composer 中文)来管理其自身的依赖包。
lpe234
2020/07/27
1.9K0
php系列一之composer的安装与使用
简单来说,composer 之于 php 相当于 maven 和 gradle 之于 java,npm 之于 nodejs,pip 之于 python,go mod 之于 golang。是 php 中的一款依赖管理的工具。
山行AI
2019/11/20
4.9K0
如何在 CentOS 8 上安装和使用 Composer创建PHP项目
Composer 是一种工具,可让您更好地组织用 PHP 开发的项目所使用的依赖项。除了轻松安装第三方库之外,Composer 还提供了几个命令来检查和安装任何更新、删除不必要的依赖项等等。
小颖club
2022/04/11
1.3K0
这一次,真正掌握composercomposer是现代PHP的基石初识composercomposer包管理规范
现代高级编程语言,依赖管理工具是必不可少的。Java有Maven,Python有pip,Nodejs有npm, 而在composer出现之前,PHP只有被广为诟病的Pear, 由于Pear实在太难用,很少PHP开发者用到这个工具。以致于PHP的开发生态很糟糕。
章鱼喵
2018/08/02
1.3K0
这一次,真正掌握composercomposer是现代PHP的基石初识composercomposer包管理规范
如何在 CentOS 8 上安装和使用 Composer
Composer 是一个 PHP 依赖管理器(类似于 Node.js 的 npm,或者 Python 的 pip)。
雪梦科技
2020/05/09
3.2K0
各平台安装Composer
要部署一个网站,主页空间不是云主机,只有Apache,即只支持静态Html或Php。服务上,Node或Spring boot是不能用了,So sad,只好找回老工具Php,顺便安装Composer并记录下。
IT晴天
2018/08/20
1.3K0
Mac中Composer的安装和使用
Composer 是 PHP5.3以上 的一个依赖管理工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会安装这些依赖的库文件。它仅仅是一个依赖关系的管理,如同在iOS开发中Swift 和 Objective-C工程中使用的CocoaPods一样。
Light413
2020/04/08
2.4K0
PHP教程系列5 - 最重要的助手Composer
Composer是PHP的依赖管理工具,诞生的时间比较晚,在PHP5.3才正式发布。发布之后不温不火,支持的包也少,一度被认为是下一个pecl(比较失败的工具)。最近几年整合进PSR(PHP Standards Recommendation)才慢慢的被大家接受,虽然PHP程序员让人觉得天马行空,但对规范还是推崇备至。
sibenx
2019/11/21
6610
听说你PHP配置Composer遇到了一些困境
最近在写PHP通信接口,涉及到数据库CRUD操作时,觉得PHP原生方法每次都要写SQL语句,效率不高,于是尝试使用Propel orm框架,此文记录PHP配置Propel步骤,以作备份。
代码咖啡
2018/08/28
5850
听说你PHP配置Composer遇到了一些困境
Composer 的安装技术教程迪威贵宾会编程I8Io8:830011
Composer 是 PHP 的一个依赖管理工具。我们可以在项目中声明所依赖的外部工具库,Composer 会帮你安装这些依赖的库文件,有了它,我们就可以很轻松的使用一个命令将其他人的优秀代码引用到我们的项目中来。
用户5851729
2019/07/20
9540
【译】现代化的PHP开发--Composer
来源/https://www.startutorial.com/articles/view/modern-php-developer-composer
Lemon黄
2019/10/08
7670
相关推荐
composer的使用
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验