删除数组前面的数字

时间:2013-07-30 11:14:01

标签: php

我正在使用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"}}}

问题是如何删除阵列前面的这些数字?

3 个答案:

答案 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));