php通过列从mysql获取所有值到json_encode

时间:2015-11-26 23:49:10

标签: php mysql json

我必须将指定的mysql表列

的所有值放到json_encode中
$fromdate       = $_GET['fromdate'];
$getrezhiredh = safe_query("
    SELECT rezhour FROM rezhiredhours 
    WHERE rezdate = '".$fromdate."' ORDER BY rezhour
");

$rows = array();
while($r = mysql_fetch_assoc($getrezhiredh)) {
    $rows[] = $r;
}

print json_encode($rows);

上面的代码我有一个问题。此代码仅在表中返回结果时,我们有一行包含所选数据。在这种情况下,json_encode()结果是

[{" rezhour":" 1"}]

但是当表格中有多行所选数据时,除了

之外不会返回任何内容
[]

如何将从表中选择的所有值放到json_encode()中?

修改

我只是想知道为什么如果我们在表格中有更多行包含所选数据,结果不会在下面给出示例

[{" rezhour":{[0] => " 1",[1] => " 4" }]

相反,我们有" []"

提前谢谢你。

2 个答案:

答案 0 :(得分:0)

尝试更改

mysql_fetch_assoc($getrezhiredh)

mysql_fetch_object($getrezhiredh)

答案 1 :(得分:0)

mysql_fetch_assoc的结果与您的想法不同。每一行都或多或少是这样的:

array(1)
    "rezhour" => "1"

所以你可以像这样访问数据:

while($r = mysql_fetch_assoc($getrezhiredh)) {
    $rows[] = $r["rezhour"];
}