Подтвердить что ты не робот

Получить все выделенные строки mysql в массив

Мне интересно, есть ли в php функция, которая позволяет мне помещать все мои выбранные данные в массив. В настоящее время я использую mysql_fetch_array, и, как я читал в руководстве, эта функция не будет извлекать каждую запись в таблице.

$result = mysql_query("SELECT * FROM $tableName");            
$array = mysql_fetch_array($result);

  echo json_encode($array);
4b9b3361

Ответ 1

Я бы предложил использовать 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 );

Ответ 2

Вы можете попробовать:

$rows = array();
while($row = mysql_fetch_array($result)){
  array_push($rows, $row);
}
echo json_encode($rows);

Ответ 3

  • Прокрутите результаты и поместите их в массив

  • используйте mysqli_fetch_all(), чтобы получить их все за один раз

Ответ 4

$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 
}