我正在使用PHP中的数组
{"lista":[{"Grad":"Beograd"},{"Grad":"Novi_Sad"},{"Grad":"Beograd"},{"Grad":"Novi_Sad"},{"Grad":"Beograd"},{"Grad":"Beograd"},{"Grad":"Beograd"},{"Grad":"Kragujevac"},{"Grad":"Kragujevac"},{"Grad":"Beograd"},{"Grad":"Kragujevac"},{"Grad":"Beograd"}]}
当我使用时:
$arr = array_flip(array_map('serialize', $rows));
$lista = array_map('unserialize', array_flip($arr));
echo json_encode((object) array('lista' => $lista));
我正在
{"lista":{"19":{"Grad":"Beograd"},"18":{"Grad":"Novi_Sad"},"20":{"Grad":"Kragujevac"}}}
问题是如何删除阵列前面的这些数字?
答案 0 :(得分:4)
尝试更改
echo json_encode((object) array('lista' => $lista));
到
echo json_encode((object) array('lista' => array_values($lista)));
注意:未经测试
答案 1 :(得分:1)
我认为您需要填充数组,如php手册文档中的示例所示: http://php.net/manual/en/function.json-encode.php
来自PHP网站:
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
echo json_encode($arr);
以上示例将输出:
{"a":1,"b":2,"c":3,"d":4,"e":5}
答案 2 :(得分:1)
在编码之前将array_values应用到Json_encode
$lista = array_values(array_map('unserialize', array_flip($arr)));
echo json_encode((object) array('lista' => $lista));