我得到一个关联数组以及一个只有一行数据库的普通数组?

时间:2011-09-01 19:18:35

标签: php jquery json

我正在获取值,然后将其传递给json_encode

的ajax函数

奇怪的是我得到{0:val1, val1:val1,1:val2,val2:val2} 回到萤火虫。我希望得到一个数组而不是一个对象 - 即[val1, val2]

这是查询:

$q = "SELECT twitter_id,kindplaatje FROM krv_profielen WHERE twitter_id IS NOT NULL AND kindplaatje IS NOT NULL";
    $r = @mysql_query ($q,$dbc) or trigger_error("Query: $q\n<br />MySQL Fout: " . mysql_error($dbc));// Voer de query uit.
    if ($r) {

        if (mysql_num_rows($r) >= 1){
            $check = "ok";
            $data = mysql_fetch_array($r);

这是正常的反应吗?

2 个答案:

答案 0 :(得分:3)

因为默认情况下mysql_fetch_array返回一个由数字和键索引的组合数组。见这里:http://us3.php.net/mysql_fetch_array

改为使用mysql_fetch_assoc

答案 1 :(得分:2)

这是正常行为,参考http://no2.php.net/mysql_fetch_array

如果您不想这样,可以向mysql_fetch_array添加第二个参数,其中一个参数:

  • MYSQL_ASSOC
  • MYSQL_NUM
  • MYSQL_BOTH

MYSQL_BOTH是默认值。