2012-03-29 27 views
0

我有以下代码:获取基于查询的所有行到一个数组

//-------------------------------------------------------------------------- 
    // 2) Query database for data 
    //-------------------------------------------------------------------------- 
    $result = mysql_query("SELECT * FROM $tableName");   //query 
    $array = mysql_fetch_row($result);       //fetch result 

    //-------------------------------------------------------------------------- 
    // 3) echo result as json 
    //-------------------------------------------------------------------------- 
    echo json_encode($array); 

我想要做的就是获取基于查询的所有行和饲料那些入阵,给我这样的输出:

["1", "", "", "", "", ""] 
["2", "", "", "", "", ""] 
etc... 

我假设我需要遍历行并建立数组,但我不知道如何。

回答

1
$result = mysql_query("SELECT * FROM $tableName"); 
$arr_json = array(); 
while ($row = mysql_fetch_assoc($result)) { 
    $json = json_encode($row); 
    $arr_json[] = $json; 
} 

编辑:看一个j08691的答案,它看起来像我可能会误解。

无论如何,如果你不知道你有多少列有,这样做:

$arr = array(); 
while ($row = mysql_fetch_assoc($result)) { 
    $arr2 = array(); 
    foreach ($row as $val) $arr2[] = $val; 
    $arr[] = $arr2; 
} 
1

尝试:

$result = mysql_query("SELECT * FROM $tableName"); 
while($row = mysql_fetch_array($result)) { 
    $array[]=array($row[0], $row[1],...); 
} 

,这将产生一个多维数组,其中子数组包含你的价值观。

相关问题