Composer PHP依赖管理
对于现代语言而言,包管理器基本上是标配。Java有Maven,Python有pip,Ruby有gem,Nodejs有npm。PHP的则是PEAR,不过PEAR坑不少:
- 依赖处理容易出问题
- 配置非常复杂
- 难用的命令行接口
好在我们有Composer,PHP依赖管理的利器。它是开源的,使用起来也很简单,提交自己的包也很容易。
安装Composer
Composer需要PHP 5.3.2+才能运行。
$ curl -sS https://getcomposer.org/installer | php
这个命令会将composer.phar
下载到当前目录。PHAR(PHP 压缩包)是一个压缩格式,可以在命令行下直接运行。
你可以使用--install-dir
选项将Composer安装到指定的目录,例如:
$ curl -sS https://getcomposer.org/installer | php -- --install-dir=bin
当然也可以进行全局安装:
$ curl -sS https://getcomposer.org/installer | php
$ mv composer.phar /usr/local/bin/composer
在Mac OS X下也可以使用homebrew安装:
brew tap josegonzalez/homebrew-php
brew install josegonzalez/php/composer
不过通常情况下只需将composer.phar
的位置加入到PATH
就可以,不一定要全局安装。
声明依赖
在项目目录下创建一个composer.json
文件,指明依赖,比如,你的项目依赖 monolog:
{"require": {"monolog/monolog": "1.2.*"}
}
安装依赖
安装依赖非常简单,只需在项目目录下运行:
composer install
如果没有全局安装的话,则运行:
php composer.phar install
自动加载
Composer提供了自动加载的特性,只需在你的代码的初始化部分中加入下面一行:
require 'vendor/autoload.php';
模块仓库
packagist.org是Composer的仓库,很多著名的PHP库都能在其中找到。你也可以提交你自己的作品。
高级特性
以上介绍了Composer 的基本用法。Composer还有一些高级特性,虽然不是必需的,但是往往能给PHP开发带来方便。
项目主页
更多信息请访问 Composer 的主页。
国内镜像
http://pkg.phpcomposer.com/
Composer PHP依赖管理相关推荐
- Composer -- PHP依赖管理的新时代
对于现代语言而言,包管理器基本上是标配.Java 有 Maven,Python 有 pip,Ruby 有 gem,Nodejs 有 npm.PHP 的则是 PEAR,不过 PEAR 坑不少: 依赖处理 ...
- Composer -- PHP依赖管理的用法
1:下载 1.1:方法一: 通过PHP来安装 cd /home/composer curl -sS https://getcomposer.org/installer | php #这个命令会下载c ...
- composer 设置版本号_Composer依赖管理 – PHP的利器
别再到处搜PHP类扩展包了,对于现代语言而言,包管理器基本上是标配.Java 有 Maven,Python 有 pip,Ruby 有 gem,Nodejs 有 npm.PHP 的则是 PEAR,不过 ...
- composer:php的依赖管理工具
phpcomposer PHP 5.3.2+ Composer 不是一个包管理器,但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装.默认情况下它不会在全局安装任何东西 ...
- PHP依赖管理工具Composer配置安装及基本使用
一.介绍 Composer是PHP中的一个依赖管理工具. 它可以让你声明自己项目所依赖的库,然后它将会在项目中为你安装这些库.就像是node的npm和ruby的bundler差不多. 二.window ...
- window下PHP依赖管理工具Composer的安装与使用
一.什么是Composer? Composer 是 PHP 的一个依赖管理工具.我们可以在项目中声明所依赖的外部工具库,Composer 会帮你安装这些依赖的库文件,有了它,我们就可以很轻松的使用一个 ...
- linux go vendor目录,Go 包依赖管理工具 —— govendor
govendor 是一个基于 vendor 机制实现的 Go 包依赖管理命令行工具.与原生 vendor 无侵入性融合,也支持从其他依赖管理工具迁移,可以很方便的实现同一个包在不同项目中不同版本.以及 ...
- 关于 C++ 依赖管理
有经验的程序员,不论所用何种语言,对代码依赖都不会陌生.代码无论是依赖于内部依赖关系,还是依赖于外部库或框架,通常都不会孤立运行.代码的重复使用,亦即使用现有代码的做法,是提升开发效率的重要工具.不过 ...
- Python依赖管理和打包工具poetry
poetry简介 poetry 是一个包管理和打包的工具. 在 Python 中,对于初学者来说,打包系统和依赖管理是非常复杂和难懂的. 以前是把需要的包和版本全部写在requirements.txt ...
最新文章
- bind98-内网智能DNS之master服务器构建
- 20145220韩旭飞《网络对抗》Exp6 信息搜集与漏洞扫描
- gacutil.exe Path
- 洛谷 P3374 【模板】树状数组 1
- php protobuf 性能,php中使用protobuffer
- 代理服务器之正向代理和反向代理
- boost::log::string_literal用法的测试程序
- 软件工程之快速原型模型
- 数学之美:欣赏超越数e
- nginx redis mysql_Nginx + Lua + Kafka + Redis + Mysql
- 推理集 —— 举一反三
- iOS开发-获取View截图图像
- ArcPy常用类介绍
- 左斜杠和右斜杠的区别
- 【算法专题】数独问题详解
- 基于zookeeper3.4.6的源码研究(三)
- Allegro中anti-etch的作用
- graylog+kafka+zookeeper(单机测试及源码),kafka+zookeeper组件部署(二)
- 嵌入式--LCD常用接口介绍
- BS工作原理—BS总结