PHP多维数组 - 使用键

时间:2016-09-05 15:21:31

标签: php json multidimensional-array

我有一个由json_decode()生成的数组。 $ array_data = json_decode(json_encode(simplexml_load_string($ data)),true);

输出数组如下所示:

Array
(
    [@attributes] => Array
        (
            [version] => 1.0
        )

    [response] => Array
        (
            [operation] => Array
                (
                    [@attributes] => Array
                        (
                            [name] => ADD_REQUEST
                        )

                    [result] => Array
                        (
                            [statuscode] => 200
                            [status] => Success
                            [message] => Request added successfully
                        )

                    [Details] => Array
                        (
                            [0] => Array
                                (
                                    [workorderid] => 291885
                                )

                            [1] => Array
                                (
                                    [parameter] => Array
                                        (
                                            [name] => workorderid
                                            [value] => 291885
                                        )

                                )

                        )

                )

        )

)

我需要保存密钥' workorderid'的价值。在另一个PHP变量,所以我可以在我的代码中进一步使用它。价值是动态的。

我现在一直在苦苦挣扎并寻找一些指导。 有人可以帮忙完成这项工作吗?非常感谢提前!

此致 POOJA

1 个答案:

答案 0 :(得分:0)

如果您确定 //this property name is now misleading. //TODO figure out a good way to deprecate this property name this.executionTimeoutInMilliseconds = getProperty(propertyPrefix, key, "execution.isolation.thread.timeoutInMilliseconds", builder.getExecutionIsolationThreadTimeoutInMilliseconds(), default_executionTimeoutInMilliseconds); 下的第一个数组将包含Details键,您可以直接访问它:

workorderid

<强>输出:

  

string(6)&#34; 291885&#34;

如果您不知道$workorderid = $array_data['response']['operation']['Details'][0]['workorderid']; var_dump($workorderid); 下的哪个数组,您将不得不循环搜索它并找到它:

Details

<强>输出:

  

string(6)&#34; 291885&#34;

如果您只需要从响应中获取1个密钥,这是一个可行的解决方案。如果您需要更多密钥,我建议将响应数据映射到更易读的结构中。