我有以下代码,其中我将变量存储在一个数组中,并在其中存储 2 个信息数组。
$fonos =array();
$direccion = array();
foreach ($_POST['new_fono'] as $fono) {
$fonos[] = $fono;
}
foreach ($_POST['new_address'] as $address) {
$direccion[] = $address;
}
$data['result'] = array($name,$city,$obs,$email,$giro,$direccion,$fonos);
echo json_encode($data);;
通过这种方式,我显示了您将保存的变量
alert(response.result[0]);
但是我如何显示array
电话和地址。
我在 devtool 中的结果
{"result":["Name Cliente","City","qwe","[email protected]","Informatica",["Calle 1","Calle 2","Calle 3"],["123123123","456456456","789789789"]]}
在
result
JSON 键内有一个包含多个元素的数组,在该数组内还有另外两个子数组,一个包含街道,另一个包含电话。读取 JSON 的一种方法是对每个键进行正常读取,询问它何时是数组,在这种情况下,您可以使用
join
任何分隔符提取子数组中的数据,这可以是换行符、逗号或其他。例如:
打印方式相同,但必须使用json_encode()将数组转换为字符串:
要在警报中显示,请将数组显示为对象的字符串表示形式,如下所示:
例子:
会显示:
根据您在更新中显示的 json:
该结构实际上是一个数组(
result
),包含 5 个值("Name Cliente", "City", "qwe", "[email protected]", "Informatica"
)和 2 个数组,一个包含街道(["Calle 1", "Calle 2", "Calle 3"]
),另一个包含数字(["123123123", "456456456", "789789789"]
)要获取它的值,你可以这样做:
这将作为输出:
我的建议是用键值定义你的结果对象。你可以这样做:
有了这个,现在访问每个元素更容易了,你可以访问:
此外,您正在定义一个在接收时易于理解的结构(在读取 json 时,您可以看到键
name
指的是名称)。否则,您将不得不告诉收件人 0 是姓名,1 是地址...这是您可以显示它的方式:
或者在任何情况下都有一个
console.log(response.result);
,以便您可以通过控制台查看您的阵列