我正在尝试搜索从 SOAP XML 响应转换为特定值的复杂 JSON 数组。钥匙真的很通用。 ["configurableFields"]=> array(1) { ["configurableField"]=> array(6) { [0]=> array(3) { ["label"]=> string(15) "Job Information" ["value"]=> string(15) "Job Information" ["criteria"]=> array(1) { ["criterion"]=> array(3) { [0]=> array(2) { ["label"]=> string(19) "SAP Position Number" ["value"]=> string(3) "TBC" } [1]=> array(2) { ["label"]=> string(20) "Assignment JD Number" ["value"]=> string(6) "AG111111" } [2]=> array(2) { ["label"]=> string(20) "Generic JD Reference" ["value"]=> string(5) "C11111" } } } } [1]=> array(3) { ["label"]=> string(16) "Hours and salary" ["value"]=> string(5) "Hours" ["criteria"]=> array(1) { ["criterion"]=> array(3) { [0]=> array(2) { ["label"]=> string(14) "hours per week" ["value"]=> string(2) "37" } [1]=> array(2) { ["label"]=> string(14) "weeks per year" ["value"]=> string(2) "52" } [2]=> array(2) { ["label"]=> string(6) "Salary" ["value"]=> string(11) "£29,636 pa" } } } } } }在上面的示例中,我如何在数组中搜索标签“Salary”,然后获取“£29, 636 pa”的值字符串。对不起,如果我遗漏了一些简单的东西。我没有任何起始代码,因为我只是通过在 foreach 循环中定位它来打印值。编辑:忘记添加如果缺少某些数据,数组中值的位置可能会发生变化。
1 回答

ibeautiful
TA贡献1993条经验 获得超6个赞
您可以通过 索引该数组,label
以便在接下来的步骤中将其用于其他值:
$array = array_column($array["configurableFields"]["configurableField"], null, "label");
然后你就会有Job Information
钥匙Hours and salary
。criterion
然后你可以通过以下索引label
:
$HoursSalary = array_column($array["Hours and salary"]["criteria"]["criterion"], null, "label");
最后访问密钥value
的:Salary
echo $HoursSalary["Salary"]["value"];
- 1 回答
- 0 关注
- 96 浏览
添加回答
举报
0/150
提交
取消