搜索
首页
笔记
案例
关于
课程列表
composer
安装及配置镜像
创建composer.json文件
命令行
packagist.org中提交项目
自动加载文件及控制器
课程导航
计算机基础知识
C
Linux
linux常用软件
计算机网络
程序员修养
设计模式
工具
Git
composer
vim
IntelliJ IDEA
wireshark
laravel
Spring
SpringMVC
Maven
数据库
MySQL
Redis
MongoDB
JDBC
Mybatis
MyBatis-Plus
服务端编程
PHP
Java
shell script
JavaWeb
HTML / CSS
HTML
CSS
HTML5
CSS3
BOOTSTRAP
JavaScript
JavaScript
JQuery
layui
创建composer.json文件
packagist.org中提交项目
命令行
## 包版本 在前面的例子中,我们引入的 monolog 版本指定为 1.0.*。这表示任何从 1.0 开始的开发分支,它将会匹配 1.0.0、1.0.2 或者 1.0.20。 版本约束可以用几个不同的方法来指定。 ![](http://blog.1024phper.com/static/qiniu/blog20042713513185439) ### 下一个重要版本(波浪号运算符) ~ 最好用例子来解释: ~1.2 相当于 >=1.2,<2.0,而 ~1.2.3 相当于 >=1.2.3,<1.3。正如你所看到的这对于遵循 语义化版本号 的项目最有用。一个常见的用法是标记你所依赖的最低版本,像 ~1.2 (允许1.2以上的任何版本,但不包括2.0)。由于理论上直到2.0应该都没有向后兼容性问题,所以效果很好。你还会看到它的另一种用法,使用 ~ 指定最低版本,但允许版本号的最后一位数字上升。 ## 包版本 在前面的例子中,我们引入的 monolog 版本指定为 1.0.*。这表示任何从 1.0 开始的开发分支,它将会匹配 1.0.0、1.0.2 或者 1.0.20。 版本约束可以用几个不同的方法来指定。 ![](http://blog.1024phper.com/static/qiniu/blog20042713513185439) ### 下一个重要版本(波浪号运算符) ~ 最好用例子来解释: ~1.2 相当于 >=1.2,<2.0,而 ~1.2.3 相当于 >=1.2.3,<1.3。正如你所看到的这对于遵循 语义化版本号 的项目最有用。一个常见的用法是标记你所依赖的最低版本,像 ~1.2 (允许1.2以上的任何版本,但不包括2.0)。由于理论上直到2.0应该都没有向后兼容性问题,所以效果很好。你还会看到它的另一种用法,使用 ~ 指定最低版本,但允许版本号的最后一位数字上升。 ## 依赖管理 ### 安装所有依赖的包 安装composer.json中声明的所有依赖的包 `composer install` ``` { "require": { "monolog/monolog": "1.2.*", "spatie/array-to-xml": "2.11.*" } } ``` ``` D:\wwwroot\wedding>composer install Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 2 installs, 0 updates, 0 removals - Installing monolog/monolog (1.2.1): Downloading (100%) - Installing spatie/array-to-xml (2.11.2): Downloading (100%) …… ``` ### 安装单个依赖的包 如果只是安装单个依赖的包,可以不用在composer.json文件中写明。直接在命令行中敲入: ``` composer require 包名 [版本要求] ``` 该命令敲入后,composer.json文件会自动修改 ``` >composer require hassankhan/config 2.* ./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 1 install, 0 updates, 0 removals - Installing hassankhan/config (v2.1.0): Downloading (100%) hassankhan/config suggests installing symfony/yaml (~3.4) Writing lock file Generating autoload files ``` ### 更新依赖 * compser update 更新所有依赖 * composer update vendor/package vendor/package2 仅更新两个包 如果有新的包需要依赖,先在require里写明依赖,然后用命令`composer update` 来更新依赖 ``` [root@localhost composer1]# composer update Loading composer repositories with package information Updating dependencies (including require-dev) Nothing to install or update Generating autoload files [root@localhost composer1]# composer update vendor/monolog Package "vendor/monolog" listed for update is not installed. Ignoring. Loading composer repositories with package information Updating dependencies (including require-dev) Nothing to install or update Generating autoload files ``` ### 移除依赖 remove ``` [root@localhost composer1]# composer remove monolog/monolog Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 0 installs, 0 updates, 1 removal - Removing monolog/monolog (1.24.0) Writing lock file Generating autoload files ```
创建composer.json文件
packagist.org中提交项目
文章目录