composer是php包管理工具
composer是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。
MAC、LInux安装composer
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
Windows安装:
https://getcomposer.org/Composer-Setup.exe
composer 国内镜像配置:(命令行中执行以下命令)
composer config -g repo.packagist composer https://packagist.phpcomposer.com
生成一个空的Composer项目:
在合适的地方新建一个文件夹,命名为 mvc,在文件夹下新建文件 composer.json:
{
"require": {
}
}
命令行切换到 mvc目录下,运行:
composer update
就会在该目录下生成一个vendor文件夹。以后所有的第三扩展包都会安装在这里。
里面的代码大家可以看看。
安装扩展包
以下以monolog为例
声明依赖
在项目目录下创建一个composer.json文件,指明依赖,比如,你的项目依赖 monolog:
{
"require": {
"monolog/monolog": "1.2.*"
}
}
如果不需要使用https,可以这么写,以解决有时候因为https造成的问题:
{
"require": {
"monolog/monolog": "1.2.*"
},
"config": {
"secure-http": false
}
}
安装依赖
安装依赖非常简单,只需在项目目录下运行:
composer install
如果没有全局安装的话,则运行:
php composer.phar install
更新全部的包(谨慎使用):
composer update
注意:使用composer install或者composer update命令将会更新所有的扩展包,项目中使用需谨慎!!!
若只安装指定的包推荐在命令行使用:
composer require monolog/monolog
进行安装。
如果需要指定版本:
composer require "monolog/monolog:1.2.*"
更新某个包:
composer update monolog/monolog
移除某个包:
composer remove monolog/monolog
如果手动更新了composer.json需要更新autoload:
composer dump-autoload
自动加载
Composer提供了自动加载的特性,只需在你的代码的初始化部分中加入下面一行:
require 'vendor/autoload.php';
composer是php包管理工具的更多相关文章
- php composer包管理工具
一 . 包管理工具 你在Centos上装工具的时候直接yum -y install xx 比你去rpm -ivh xx.rpm 是不是爽很多呢? composer 就是安装php 代码的一个类似工具. ...
- Composer : php依赖管理工具
原始时代 我记得在当时用php的时候还没有composer,只有个pear,但是不好用呀,还不如直接在互联网上到处复制代码了,更快更不容易出错,当时也没有github这么好的社区工具了 总结如下 代码 ...
- NodeJS包管理工具——npm入门
如今每个语言体系中都有一个包管理工具,PHP的Composer,Ruby的gem,Python的pip,Java的Maven……当然还有Node.js的npm.有的人会奇怪为何要引入又一个新东西来让我 ...
- Golang学习--包管理工具glide
上一篇文章中我们已经成功的运行了go的代码,这是我们迈出的最基础的一步. 一个项目通常会依赖很多外部的库,当依赖的库比较多的时候,手工管理就会比较麻烦,这个时候就需要包管理工具出场了,帮你管理好所有依 ...
- Go语言包管理工具dep
什么是dep? dep和go,在一定程度上相当于maven之于Java,composer之于PHP,dep是go语言官方的一个包管理工具. 相比较go get而言,dep可以直接给引入的第三方包一个专 ...
- [Todo]各种语言包管理工具
看到一篇文章不错: http://harttle.com/2015/05/29/pkg-manager.html 包管理和构建系统是现代的软件开发团队中必不可少的工具,也是Linux软件系统的常见组织 ...
- Python | Pipenv官方推荐的python包管理工具
原文地址:https://cloud.tencent.com/developer/article/1355672 Pipenv - 官方推荐的的python包管理工具. Pipenv是一款旨在将所有包 ...
- glide包管理工具
上一篇文章中我们已经成功的运行了go的代码,这是我们迈出的最基础的一步. 一个项目通常会依赖很多外部的库,当依赖的库比较多的时候,手工管理就会比较麻烦,这个时候就需要包管理工具出场了,帮你管理好所有依 ...
- Python黑帽编程1.3 Python运行时与包管理工具
Python黑帽编程1.3 Python运行时与包管理工具 0.1 本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Attack and ...
随机推荐
- ubuntu boot空间不足的解决方法
ubuntu boot空间不足的解决方法 2013年12月11日 11:11:39 yypony 阅读数:17000 标签: ubuntu内存boot内核更多 个人分类: linux_usageubu ...
- etl工具,kettle实现循环
Kettle是一款国外开源的ETL工具,纯Java编写,可以在Window.Linux.Unix上运行,绿色无需安装,数据抽取高效稳定. 业务模型: 在关系型数据库中有张很大的数据存储表,被设计成奇偶 ...
- URL 重写
转载自:http://www.cnblogs.com/knowledgesea/archive/2012/10/08/2715350.html 一. 为了页面更有利于seo优化,url重写程序需要做出 ...
- 第二百六十一节,Tornado框架模板引擎本质
Tornado框架模板引擎本质 只需要了解一下即可 本篇就来详细的剖析模板处理的整个过程. 上图是返回给用户一个html文件的整个流程,较之前的Demo多了绿色流线的步骤,其实就是把[self.wri ...
- php -- 魔术方法 之 获取属性:__get()
属性重载:当访问一个不存在或者权限不够的属性的时候,能够触发一系列的魔术方法,就叫做属性重载 __get():获取不存在或者权限不够的属性的时候会自动触发 <?php header('Conte ...
- 【NOIP模拟题】Incr(dp)
太水的dp没啥好说的.. #include <cstdio> #include <cstring> #include <cmath> #include <st ...
- hdu 1201:18岁生日(水题,闰年)
18岁生日 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- mysql备份数据库常见问题
如果遇到mysqldump: unknown option '--no-beep' ,可以加上 --no-dafaults 命令结尾无需分号 mysqldump --no-defaults -uro ...
- JZOJ.5306【NOIP2017模拟8.18】棋盘游戏
Description 这个游戏上在一个无限大的棋盘上, 棋盘上只有一颗棋子在位置(x,y)(x,y>=0)棋盘的左下角是(0,0)Amphetamine每次都是第一个移动棋子,然后Amphet ...
- mysql5.6的二进制包安装
author: headsen chen data :2018-06-08 16:21:43 1. 创建存放软件文件夹 # cd / #mkdir a 2.下载MySQL5.6二进制包 cd a w ...