【问题标题】:Mysql to Json encoded arrayMysql 到 Json 编码数组
【发布时间】:2015-09-22 11:55:19
【问题描述】:

我正在使用来自 mysql 的数据创建一个 json 数组:

$array = $db->query("SELECT .............")->fetchAll(PDO::FETCH_ASSOC);
print json_encode($array);

这会返回:

[{"animal":"alpaca"},{"animal":"buffalo"},{"animal":"cat"},{"animal":"tiger"}] 

但我需要它使用以下语法返回数据:

 ["alpaca","buffalo","cat","tiger"]

关于如何实现这一点的任何提示?

【问题讨论】:

  • 需要更改 FETCH_ASSOC 因为它返回关联数组
  • print json_encode(array_values($array));

标签: php mysql arrays json


【解决方案1】:

使用array_values() 处理您的问题:

$array = json_encode(array_values($array));

【讨论】:

  • 返回 [{"animal":"alpaca"},{"animal":"tiger"}]
【解决方案2】:

您可以在这里简单地使用array_values,但如果要进行更改,您也可以使用array_column,例如

$array = $db->query("SELECT .............")->fetchAll(PDO::FETCH_ASSOC);
print json_encode(array_column($array,'animal'));

注意:array_column() 需要 PHP > 5.5.0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    • 2013-03-29
    • 2017-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多