将多维数组的php数组转换为javascript数组

时间:2014-10-17 11:46:33

标签: javascript php jquery json multidimensional-array

您好我有PHP代码示例:

$array1 = array("fruits" => "banana","vegetables" => "tomatos");
$array2 = array("name" => "Jack","Age" => "32");

$array3 = array($array1, $array2);

echo json_encode($array3);

javascript代码包括jquery:

   var json_data = $.ajax({
                type: 'POST',
                url: 'scripts/myfile.php',
                data: { action: 'myaction' },
                dataType: 'json',
                cache: false,
                success: function(result) {
                    console.log(result);
                }
            });

如何将json_data转换为数组并影响$ array1&的两个$ array2到javascript数组!

这是json_data内容:

"{"HUM":[{"label":"2014-10-16 17:08:55","y":"58"},{"label":"2014-10-15 08:16:55","y":"56"},{"label":"2014-10-15 08:16:50","y":"56"},{"label":"2014-10-15 08:16:45","y":"56"},{"label":"2014-10-15 08:16:40","y":"56"},{"label":"2014-10-15 08:16:35","y":"56"},{"label":"2014-10-15 08:16:30","y":"56"},{"label":"2014-10-15 08:16:25","y":"56"},{"label":"2014-10-15 08:16:20","y":"56"},{"label":"2014-10-15 08:16:15","y":"56"},

"TEMP":[{"label":"2014-10-16 17:08:55","y":"26"},{"label":"2014-10-15 08:16:55","y":"24"},{"label":"2014-10-15 08:16:50","y":"24"},{"label":"2014-10-15 08:16:45","y":"24"},{"label":"2014-10-15 08:16:40","y":"24"},{"label":"2014-10-15 08:16:35","y":"24"},{"label":"2014-10-15 08:16:30","y":"24"},{"label":"2014-10-15 08:16:25","y":"24"},{"label":"2014-10-15 08:16:20","y":"24"},{"label":"2014-10-15 08:16:15","y":"24"},

"HUM2":[{"label":"2014-10-16 17:08:55","y":"38"},{"label":"2014-10-15 08:16:55","y":"36"},{"label":"2014-10-15 08:16:50","y":"36"},{"label":"2014-10-15 08:16:45","y":"36"},{"label":"2014-10-15 08:16:40","y":"36"},{"label":"2014-10-15 08:16:35","y":"36"},{"label":"2014-10-15 08:16:30","y":"36"},{"label":"2014-10-15 08:16:25","y":"36"},{"label":"2014-10-15 08:16:20","y":"36"},{"label":"2014-10-15 08:16:15","y":"36"},{"label":"2014-10-15 08:16:10","y":"36"},

"TEMP2":[{"label":"2014-10-16 17:08:55","y":"23"},{"label":"2014-10-15 08:16:55","y":"24"},{"label":"2014-10-15 08:16:50","y":"24"},{"label":"2014-10-15 08:16:45","y":"24"},{"label":"2014-10-15 08:16:40","y":"24"},{"label":"2014-10-15 08:16:35","y":"24"},{"label":"2014-10-15 08:16:30","y":"24"},{"label":"2014-10-15 08:16:25","y":"24"},{"label":"2014-10-15 08:16:20","y":"24"},{"label":"2014-10-15 08:16:15","y":"24"},{"label":"2014-10-15 08:16:10","y":"24"},{"label":"2014-10-15 08:16:05","y":"24"},{"label":"2014-10-15 08:16:00","y":"24"}]}"

现在我想将它转换为数组,然后将其转换为数组HUM - TEMP - HUM2 - TEMP2

3 个答案:

答案 0 :(得分:1)

在您的代码中,

$array3 = array(array1, array2);

这里array1和array2被认为是没有引号的字符串,所以你不会得到答案。这应该是PHP变量。您必须在此添加$个签名。

$array3 = array($array1, $array2);

答案 1 :(得分:0)

dataType上的jQuery $.ajax()文档设置为json

  

" json":将响应评估为JSON并返回JavaScript对象。 JSON数据以严格的方式解析;任何格式错误的JSON都会被拒绝,并抛出一个解析错误。从jQuery 1.9开始,空响应也被拒绝;服务器应该返回null或{}的响应。 (有关正确的JSON格式的更多信息,请参阅json.org。)

对象结果已经是success函数中的JSON对象。因此,您只需使用result[0]['fruits']result[1]['name']即可访问相关数组。

编辑:修正索引为@charlietfl指出。

答案 2 :(得分:0)

$array3 = array(array1, array2);应为$array3 = array($array1, $array2);