PHP composer 日常使用命令和理解
composer的操作很多很杂,平时大都用不上,正要找又一时半会难找到
日常操作,走起
第一部分 : 安装 composer.json
composer init
这个命令创建了一个 composer.json 文件,也可以手动创建编辑,申明依赖及版本。
composer.json 内容格式详见
{
"require": {
"monolog/monolog": "1.0.*"
}
}
其中版本约束 详见
| 名称 | 实例 | 描述 |
|---|---|---|
| 确切的版本号 | 1.0.2 |
你可以指定包的确切版本。 |
| 范围 | >=1.0 >=1.0,<2.0>=1.0,<1.1|>=1.2 |
通过使用比较操作符可以指定有效的版本范围。 有效的运算符: >、>=、<、<=、!=。 你可以定义多个范围,用逗号隔开,这将被视为一个逻辑AND处理。一个管道符号 |将作为逻辑OR处理。 AND 的优先级高于 OR。 |
| 通配符 | 1.0.* |
你可以使用通配符*来指定一种模式。1.0.*与>=1.0,<1.1是等效的。 |
| 赋值运算符 | ~1.2 |
这对于遵循语义化版本号的项目非常有用。~1.2相当于>=1.2,<2.0。想要了解更多,请阅读下一小节。
|
composer install
创建并填写好composer.json ,执行 install 命令来进行第一次安装
第一次安装会检查里面列的软件包,依赖等,寻找合适(通过约束)的版本号
之后会生成一个锁文件 composer.lock
锁文件里记录了每一个包确切的版本号
再次执行安装的时候会检查锁文件是否存在,存在就按照锁文件中指定的直接安装
第二部分 : 向项目(已存在composer.json)中添加包
composer require 依赖包/依赖包:版本号
还可以同时添加多个 空格空开 eg: doctrine/orm:1.0.0
第三部分 : 更新
composer update
这条命令无视锁文件,把 composer.json 里列的依赖更新一遍,重新生成锁文件
第四部分:用依赖包创建项目
composer create-project 依赖包/依赖包 路径路径 版本版本
注意 用包创建项目时,也可以指定版本,但版本约束在第三个参数,第二个参数是项目路径(相对)。未指定版本默认安装最新版本
eg: laravel/laravel path 5.8.0
附录
- 切换中国镜像源
composer config -g repo.packagist composer https://packagist.phpcomposer.com
- 在生产环境中,安装初始化项目使用 -o 选项。详见官方文档
--optimize-autoloader (-o) :
转换 PSR-0/4 autoloading 到 classmap 可以获得更快的加载支持。特别是在生产环境下建议这么做,但由于运行需要一些时间,因此并没有作为默认值。
作者:saopanda 地址 https://www.cnblogs.com/saopanda/p/10819243.html
转载请附原链接,谢谢!
PHP composer 日常使用命令和理解的更多相关文章
- 2.goldengate日常维护命令(转载)
goldengate日常维护命令 发表于 2013 年 7 月 4 日 由 Asysdba 1.查看进程状态 GGSCI (PONY) 2> info all 2.查看进程详细状态,有助于排错 ...
- svn服务配置和日常维护命令
Subversion独立服务和与apache整合服务. 一 .Svn独立服务安装 操作系统: Redhat Linux AS3 AS 4 ContOS AS 4 安装包获取: 下载[url]ht ...
- Linux命令行–理解Linux文件权限(转)
6.1.1 /etc/passwd文件 /etc/passwd:包含系统用户账户列表以及每个用户的基本配置信息 每个条目有七个字段,每个字段用冒号隔开 登录用户名 用户密码 用户账户的UID 用户账户 ...
- 程序员必备:Oracle日常维护命令
上一篇讲了Linux的日常维护命令,这篇讲讲Oracle的日常维护命令.工作中需要使用Oracle数据库的童鞋们,相信或多或少都需要对Oracle做一些基本的维护操作,例如导入导出总该有吧?( ...
- mha日常维护命令
mha日常维护命令 http://m.blog.chinaunix.net/uid-28437434-id-3959021.html?/13033.shtml 1.查看ssh登陆是否成功masterh ...
- Cisco 日常巡检命令
https://www.cnblogs.com/qzqdy/p/8116903.html 日常排错命令6 交换机的前面板有几个指示灯,用于监控系统的活动和性能.这些指示灯称之为发二极管(LED) 1. ...
- Timesten 日常管理命令合集
Timesten 日常管理命令合集 以下所有操作都是基于TT 11 版,早前版本本人没用过,命令是否适用我不清楚啊! 各类服务管理 一.TT的启停 停服务: 1.停止复制与cache 进程: ...
- MHA 日常维护命令集
MHA 日常维护命令集 1.查看ssh登陆是否成功 masterha_check_ssh --global_conf=/etc/masterha/masterha_default.conf --con ...
- 数据仓库002 - 复习Linux shell命令 - echo bash_profile bashrc which命令的理解 alias history
1.echo 打印 . echo 的作用是在屏幕上打印输出内容,与文件和持久化可以理解为没有丝毫关联.如:在屏幕上打印“ echo 的作用是打印文字! ” 实例1:输出系统的环境变量名称 $PATH ...
随机推荐
- 基于springboot的RestTemplate、okhttp和HttpClient对比
1.HttpClient:代码复杂,还得操心资源回收等.代码很复杂,冗余代码多,不建议直接使用. 2.RestTemplate: 是 Spring 提供的用于访问Rest服务的客户端, RestTem ...
- cygwin添加到有右键菜单
cygwin添加到有右键菜单 前提 为了在windows中使用cygwin编译指定文件代码更为方便,所以动心思琢磨把cygwin添加到右键菜单,百度了一下,发现很多这样的教程,但是有问题,比如添加了但 ...
- CLion提示can't find stdio.h等错误
先上解决办法,启动参数如下: $ LANG=en_US.UTF-8 /path/to/clion.sh 查了好知久,竟然就由于编码的原因.可是Ubuntu已经设置为英文UTF-8,还是可以通过上面的方 ...
- C# HttpRequest
using System; using System.Collections; using System.Collections.Generic; using System.IO; using Sys ...
- consider increasing the maximum size of the cache.
虚拟机上搭建jenkins,出现unable to free [10] percent of the cache for Context [/jenkins] 提示让我加大缓存 consider in ...
- mooc_java Socket
Socket通信,TCP协议是面向连接,可靠的,有序的,以字节流的方式发送数据:基于TCP协议实现网络通信的类客户端的Socket类 服务器端的ServerSocket类 -------------- ...
- openfire性能调优
1. 参考 http://blog.csdn.net/foxisme2/article/details/7521139 http://blog.csdn.net/foxisme2/article/de ...
- 发挥到极致的Asterisk SS7 解决方案【转】
基于SS7的开源解决方案在国内已经安装了很多.很多用户都使用chan_ss7 开源协议栈作为呼叫中心,400电话,计费结算的系统.随着国内对开源Asterisk的认可程度越来越高. Asterisk让 ...
- <C++>友元与虚函数的组合
为类重载<<与>>这两个运算符时,重载函数必须为该类的友元函数. 当友元不能被继承,故不能当作虚函数,无法使用多态. 可以用以下结构实现友元与虚函数的组合. class bas ...
- ACM学习历程—FZU 2140 Forever 0.5(计算几何 && 构造)
Description Given an integer N, your task is to judge whether there exist N points in the plane su ...