首页 > 解决方案 > 使用名称中的点访问 json 的值时出现问题

问题描述

我需要访问名称中包含一个点的 json 的值。

我想访问“proy_sim.name”字段,但我不知道如何

{        
    "prsp_sol": [
        {
            "proy_sim.name": "Vehículos",
            "prsp_def.name": "TRACTOR"  
        }
    ]
}

标签: phpjson

解决方案


解码后,json_decode()您会发现还有一个您没有考虑到的额外数组:

$json = '{
    "prsp_sol": [
        {
            "proy_sim.name": "Vehículos",
            "prsp_def.name": "TRACTOR"
        }
    ]
}';

$decoded = json_decode($json, true); // true makes it an array
print_r($decoded);

echo $decoded['prsp_sol'][0]['proy_sim.name'];
//-----------------------^ additional nested array

输出:

Array
(
    [prsp_sol] => Array
        (
            [0] => Array
                (
                    [proy_sim.name] => Vehículos
                    [prsp_def.name] => TRACTOR
                )
        )
)

Vehículos

这是一个例子

名称中的要点无关紧要。


推荐阅读