php - 使用 JSON 数组中的 Php 如何根据另一个关联值检索项目的值?

标签 php json

我使用 json_decode Php 函数获取国家/地区数据的 JSON 数组。

{
    "Countries":
    [
        {
            "Code": "AD",
            "Name": "Andorre"
        },
        {
            "Code": "AE",
            "Name": "Émirats Arabes Unis"
        },
        {
            "Code": "AF",
            "Name": "Afghanistan"
        },
        {
            "Code": "AG",
            "Name": "Antigua-Et-Barbuda"
        },

如果我想检索第一个元素的代码,我可以这样做:

$result = json_decode($sXML);

$final = $result->Countries[0]->Name;

$final 的值为“Andorre”。 但是,如果我想使用相应的代码检索相同的值“Andorre”怎么办?

可以吗? 我知道 json_function() 有一个选项可以获取关联数组而不是 JSON 数组,但是您将如何使用它通过其代码获取值“Andorre”?

谢谢

最佳答案

<?php

$s = '{
    "Countries":
    [
        {
            "Code": "AD",
            "Name": "Andorre"
        },
        {
            "Code": "AE",
            "Name": "Émirats Arabes Unis"
        },
        {
            "Code": "AF",
            "Name": "Afghanistan"
        },
        {
            "Code": "AG",
            "Name": "Antigua-Et-Barbuda"
        }
    ]
}';

$arr = json_decode($s, true);
print_r(array_column($arr['Countries'], "Name", "Code"));

?>

产量

Array
(
    [AD] => Andorre
    [AE] => Émirats Arabes Unis
    [AF] => Afghanistan
    [AG] => Antigua-Et-Barbuda
)

关于php - 使用 JSON 数组中的 Php 如何根据另一个关联值检索项目的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43572533/

相关文章:

java - 如何使用 jackson 遍历生成的 json 模式并将自定义属性放入 json 模式

json - Jenkins:使用声明性语法从 Jenkinsfile 导入外部包

ios - 使用 SwiftyJSON 的未解析标识符 JSON

php - Magento - 仅在主页上添加我自己的内容 block

javascript - 使用PHP获取输入类型范围onchange的值

php - 电商大厦

php - 将 PDF 转换为 PNG 供 Tesseract 处理

c# - 为什么 Json.Encode 不能正确编码从 Json.Decode 返回的数据?

javascript - 在使用 Handlebars.js 进行模板化时处理带有 UUID 键的 JSON 对象?

php - mysql php私有(private)消息系统重复行