将多维数组的 PHP 数组转换为 JavaScript 数组

convert php array of multidimensional arrays to javascript array

本文关键字:数组 转换 JavaScript PHP      更新时间:2023-09-26

嗨,我有那个 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转换为数组并将 $array 1 和 $array 2 中的两个转换为 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"}]}"

现在我想将其转换为数组,然后是锯齿数组

嗡嗡声 - 温度 - 嗡嗡声2 - 温度2

在你的代码中,

$array3 = array(array1, array2);

这里 array1 和 array2 被认为是没有引号的字符串,所以你不会得到你的答案。这应该是PHP变量。您必须在此中包含$登录。

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

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

来自 jQuery $.ajax(( 文档,当它设置为 jsondataType .

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

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

编辑:更正了@charlietfl指出的索引。