在PHP中删除json数组中的键

时间:2017-08-25 13:05:13

标签: php json

我有这个

[{"cname":"NCPB"},{"cname":"NBK"}]

我来自json_encode

on mysql result

我如何从上面的JSON OBJECT获得此["NCPB","NBK"]

1 个答案:

答案 0 :(得分:0)

我想我可以在没有看到确切代码的情况下回答这个问题。基本上,您当前正在使用类似的内容获取查询结果,并在结果上使用json_encode

while ($row = $query->some_fetch_method()) {
    $results[] = $row;               // you're building an array of associative arrays
}
echo json_encode($results);

相反,只需使用该特定列而不是整行填充结果数组。

while ($row = $query->some_fetch_method()) {
    $results[] = $row['cname'];      // you need to build an array of strings instead
}
echo json_encode($results);

在使用json_encode之前,您应该将查询结果数组添加到您希望之前的格式。否则,您将必须解码刚刚创建的JSON字符串,重新格式化该结果,并重新编码:

 $json = json_encode(array_column(json_decode($json), 'cname'));

或使用一些奇怪的正则表达式或其他东西。但是,撤消你已经完成的事情似乎没有意义。

如果你没有明白我的意思,请编辑你的问题以添加获取查询结果的代码,我会根据你的确切代码向你展示一个例子,但这应该给你一般的想法。 / p>