我想知道在php中是否有一个函数可以允许我将所有选中的数据放入数组中。目前我正在使用mysql_fetch_array并且正如我在手册中读到的那样,该函数不会获取表中的每条记录
$result = mysql_query("SELECT * FROM $tableName");
$array = mysql_fetch_array($result);
echo json_encode($array);
答案 0 :(得分:45)
我建议使用MySQLi或MySQL PDO来达到性能和安全目的,但要回答这个问题:
while($row = mysql_fetch_assoc($result)){
$json[] = $row;
}
echo json_encode($json);
如果您切换到MySQLi,您可以这样做:
$query = "SELECT * FROM table";
$result = mysqli_query($db, $query);
$json = mysqli_fetch_all ($result, MYSQLI_ASSOC);
echo json_encode($json );
答案 1 :(得分:6)
您可以尝试:
$rows = array();
while($row = mysql_fetch_array($result)){
array_push($rows, $row);
}
echo json_encode($rows);
答案 2 :(得分:6)
循环结果并将每个结果放在一个数组
使用mysqli_fetch_all()
一次性获取所有内容
答案 3 :(得分:1)
$name=array();
while($result=mysql_fetch_array($res)) {
$name[]=array('Id'=>$result['id']);
// here you want to fetch all
// records from table like this.
// then you should get the array
// from all rows into one array
}
答案 4 :(得分:0)
您可以在no_of_row时间内调用mysql_fetch_array()