Php 什么时候;密钥存储库在./composer.json“中重复;,作曲家用的是哪一个?
我注意到我正在开发的包的composer.json中有重复的“repositories”键 这个包裹正在运作。因此,我希望执行“重构”,即在不改变行为的情况下修复代码 如果我想修复错误,我将不得不删除未使用的重复密钥 因此,问题是: 当“Key repositories是./composer.json中的重复项”时,composer使用哪一个 换句话说,Php 什么时候;密钥存储库在./composer.json“中重复;,作曲家用的是哪一个?,php,json,composer-php,operator-precedence,Php,Json,Composer Php,Operator Precedence,我注意到我正在开发的包的composer.json中有重复的“repositories”键 这个包裹正在运作。因此,我希望执行“重构”,即在不改变行为的情况下修复代码 如果我想修复错误,我将不得不删除未使用的重复密钥 因此,问题是: 当“Key repositories是./composer.json中的重复项”时,composer使用哪一个 换句话说, composer是否使用它找到的第一个键并忽略未来的键 它是否忽略前一个键并使用找到的最后一个键 它是否以某种巧妙的方式合并键的子项 这是
是否使用它找到的第一个键并忽略未来的键composer
- 它是否忽略前一个键并使用找到的最后一个键
- 它是否以某种巧妙的方式合并键的子项
$ composer validate
Key repositories is a duplicate in ./composer.json at line 16
...
composer.json如下所示:
{
"name": "foo/bar",
"description": "foo bar",
"license": "Apache-2.0",
"type": "library",
"repositories": [
{"type": "composer", "url": "foo"},
{"packagist.org": false}
],
"repositories": [
{
"type": "vcs",
"url": "bar"
}
],
...
}
Composer使用来复制键,但它使用json\u decode
来解码json
json\u decode
使用它为键找到的最后一个值:
>>> $json = '{"a":1,"a":10,"a":100}';
=> "{"a":1,"a":10,"a":100}"
>>> $decoded = json_decode($json)
=> {#3260
+"a": 100,
}
>>> $decoded->a
=> 100