我有一个php数组,我json_encode在javascript中使用,但我需要其中一个在引号中。我不知道该怎么做。 这是我的php数组
Array
(
[0] => Array
(
[label] => 03
[value] => 2
)
[1] => Array
(
[label] => 05
[value] => 2
)
[2] => Array
(
[label] => 06
[value] => 12
)
[3] => Array
(
[label] => 07
[value] => 12
)
[4] => Array
(
[label] => 08
[value] => 1
)
)
继承人我的json_encode
[{"label":"03","value":2},
{"label":"05","value":2},
{"label":"06","value":12},
{"label":"07","value":12},
{"label":"08","value":1}]
我想要的是
[{"label":"03","value":"2"},
{"label":"05","value":"2"},
{"label":"06","value":"12"},
{"label":"07","value":"12"},
{"label":"08","value":"1"}]
答案 0 :(得分:1)
使用foor循环迭代数组数组并将每个int转换为字符串。
for (int i = 0; i < firstArray.length; i++){
for (int j = 0; j < firstArray[i].length; j++){
firstArray[i][j][1] = firstArray[i][j][1].toString();
}}
这可能适合你。
如果您严格知道在阵列中的每个项目中都有2个项目的json对象,您可以使用:
for (int i = 0; i < firstArray.length; i++){
firstArray[i][0][1] = firstArray[i][0][1].toString();
firstArray[i][1][1] = firstArray[i][1][1].toString();
}
答案 1 :(得分:0)
在你的php数组中你有:
[1] => Array
(
[label] => 05 (as string)
[value] => 2 (as integer)
)
json_encode
检查此数组中的值的类型。根据json标准,整数可以不带引号存储。
你可以:
将整数转换为字符串(在json_encode
之前),
或在php中使用array_map
函数(在json_encode
之前)
类似的东西:
$data = json_encode(array_map('strval', $data)); // all variables are now strings