我正在使用jQuery自动完成功能。为了使其正常工作,我需要使用[[Alaska“,” Alabama“,” Arkansas“]格式的json。目前,我正在从CSV文件读取数据。这是我的代码。
$f = fopen($filename, "r");
while ($row = fgetcsv($f)) {
$out = $row[2];
print_r (explode(" , ",$out));
}
现在我得到的输出为
Array
(
[0] => Alaska
)
Array
(
[0] => Alabama
)
Array
(
[0] => Arkansas
)
我的杰森(Json)
["Alaska"]["Romeo"]["Arkansas"]
如何将数组转换为简单的数组,如
Array
(
[0] => Alaska
[1] => Alabama
[2] => Arkansas
)
如果不是这样的json
["Alaska","Alabama","Arkansas"]
答案 0 :(得分:2)
您构建一个值数组,然后将其放入json_encode()
函数中。
$data = [];
$f = fopen($filename, "r");
while ($row = fgetcsv($f)) {
$out = $row[2];
$data = array_merge($data, explode(" , ",$out)));
}
echo json_encode($data);
答案 1 :(得分:0)
可能更容易将文件读入Arary,映射到爆炸的函数,然后进行编码和显示:
echo json_encode(
array_map(function($v) { return explode(" , ", $v)[2]; }, file($filename))
);