正在删除阵列前面的数字



我的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"}}}

问题是如何删除数组前面的数字?

尝试更改

echo json_encode((object) array('lista' => $lista));

echo json_encode((object) array('lista' => array_values($lista)));

注:未测试

我认为您需要按照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}

在编码到Json_encode 之前应用array_values

$lista = array_values(array_map('unserialize', array_flip($arr)));
echo json_encode((object) array('lista' => $lista)); 

最新更新