Aad*_*sen 5 php command-line-interface composer-php
根据composer.json schemaextra属性的文档,允许设置“供脚本使用的任意额外数据”。
extra出于脚本编写的目的,如果可以通过命令行将数据添加到属性中,那就太好了。它已经尝试过composer config extra.foo bar,但这给出了错误Setting extra.foo does not exist or is not supported by this command。
所以我想知道:有没有办法使用 Composer CLI 向属性添加数据extra?
更新:Composer 1.1.0 添加了对此功能的支持: https: //getcomposer.org/doc/03-cli.md#modifying-extra-values 不幸的是,无法添加布尔值或数值,因为每个值作为字符串添加。另请参阅Composer 项目的第 #5492 期。
从 Composer 1.1.0 开始,可以使用 CLI将字符串值添加到属性中:extra
composer config extra.foo "some text"
composer config extra.bar 123
composer config extra.baz true
Run Code Online (Sandbox Code Playgroud)
结果如下:
"extra": {
"foo": "some text",
"bar": "123",
"baz": "true"
}
Run Code Online (Sandbox Code Playgroud)
从 Composer 2.0 开始,可以使用和标志添加任何 JSON 值类型的值。这包括添加数字和布尔值的可能性:--json--merge
composer config --json extra.foo '"some text"'
composer config --json extra.bar 123
composer config --json extra.baz true
Run Code Online (Sandbox Code Playgroud)
结果如下:
"extra": {
"foo": "some text",
"bar": 123,
"baz": true
}
Run Code Online (Sandbox Code Playgroud)
此功能的文档显示了如何从 CLI 添加 JSON 对象。