给它一个名称它就成为一个可安装的包
{
"name": "供应商名/项目名",
"require": {
"monolog/monolog": "1.0.*"
}
}
指定版本( 你应该尽量避免手动设置版本号,因为标签的值必须与标签名相匹配。)
{
"version": "1.0.0"
}
包的标签 'X.Y.Z'
后缀 -patch、-alpha、-beta 或 -RC
有效标签名: v4.4.4beta2
packagist 的底层是开源的。
资源库一个资源库是一个包的来源。
Satis 是一个静态的composer资源库生成器
添加来源声明 `repositories`
{
"name": "acme/blog",
"repositories": [
{
"type": "vcs",
"url": "https://github.com/username/hello-world"
}
],
"require": {
"acme/hello-world": "dev-master"
}
}
composer show --platform命令来获取可用的平台软件包的列表
声明依赖的格式:
在项目的json文件中包含进来
/*require中包含的就是packagist.org上面对象的文件, 而packagist.org也是重gitHub中去下载程序
json文件中不能有注释
require中的名称默认包名称 包名称由供应商名称和其项目名称构成。
对象的版本称为包版本 包版本约束: 确切版本 范围>= <= 通配符1.0.* 赋值运算符~ */
{
"require": {
"monolog/monolog": "1.2.*"
}
}
linux composer 安装
1、curl -sS https://getcomposer.org/installer | php (我的是php72 就是启动php的那个命令名)
2、mv composer.phar /usr/local/bin/composer
3、composer -v (出现报错如下 /usr/bin/env: php: No such file or directory 是因为php的可执行命令不在 /usr/lcoal/bin下面 采用软连接的方式,把php命令放置/usr/local/bin/ 先用find / -name php 找到命令的所在地 包含bin/php的路径就是你所需的 ln -s 你刚找到的命令地址 /usr/local/bin/php
)
coomposer 在windows下的安装方式有两种
手动
设置系统的环境变量 PATH 并运行安装命令下载 composer.phar 文件: C:\Users\username>cd C:\bin
C:\bin>php -r "readfile('https://getcomposer.org/installer');" | php
全局安装 (推荐)
安装 Composer,你只需要下载 composer.phar 可执行文件。
自动加载:
Composer 还准备了一个自动加载文件,它可以加载 Composer 下载的库中所有的类文件。使用它,你只需要将下面这行代码添加到你项目的引导文件中: require 'vendor/autoload.php';
如果想让我们自己的代码也使用composer中的自动加载类,可以通过composer.json
的autoload
字段来实现:
//满足psr-4的命名规范时
//若满足的是psr-0的规范 把4改成0就可以了
{
"autoload": {
"psr-4": {"命名空间\\": "文件地址/"}
}
}
//不满足psr的命名规范时
法一:
{
"autoload": {
"classmap": ["具体文件的路径"]
}
}
法二:
{
"autoload": {
"files": ["src/MyLibrary/functions.php"]
}
}
包含文件 (不建议 都已经自动加载了)
{
"include-path": ["lib/"]
}
要开始在你的项目中使用 Composer,你只需要一个 composer.json 文件。
composer install
install 会创建一个 composer.lock
的锁文件 锁文件会写入composer安装时确切的版本号composer update
composer install
都可以更新锁文件初始化: composer init
安装 : composer install
更新 : composer update
声明依赖 : composer require
全局执行 : composer global [update/…]
搜索 : composer search 要搜索的东西
展示 : composer show 想展示的内容
依赖检测 : depends
有效检测 : validate
依赖包状态检测 : status
自我更新 : self-update
更改配置 : config
创建项目 : create-project
打印自动加载索引(更新自动加载类) : dump-autoload
查看许可协议 : licenses