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

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

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

  echo json_encode($array);
 toske29 июн. 2012 г., 17:18
Как сказал Раки, mysql довольно старый, но, кроме этого, если вы все еще хотите повторить результат, вы можете сделать это с помощью следующего кода:$allRows = array(); while($row = mysql_fetch_array($result) {$allRows[] = $row }
 Andrew Samuelsen06 февр. 2013 г., 20:53
Если вы копируете / вставляете, toske необходимо добавить закрывающий) на его время.$allRows = array(); while($row = mysql_fetch_array($result)) {$allRows[] = $row }
 Raekye29 июн. 2012 г., 17:16
Теmysql_... функции старые и небезопасные. Вы должны использоватьmysqli или лучше PDO -php.net/manual/en/book.mysqli.php, php.net/manual/en/book.pdo.php
 Madara Uchiha♦29 июн. 2012 г., 17:28
Пожалуйста, не используйтеmysql_* функции для нового кода. Они больше не поддерживаются, и сообщество началоdeprecation process, Увидетьred box? Вместо этого вы должны узнать оprepared statements и использовать либоPDO или жеMySQLi, Если вы не можете решить,this article поможет выбрать. Если вы хотите учиться,here is good PDO tutorial.

Ответы на вопрос(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 
}
Решение Вопроса

Я бы предложил использовать MySQLi или MySQL PDO для повышения производительности и безопасности, но для ответа на вопрос:

while($row = mysql_fetch_assoc($result)){
     $json[] = $row;
}

echo json_encode($json);

Если вы переключились на MySQLi, вы можете сделать:

$json = mysqli_fetch_all ($result, MYSQLI_ASSOC);
echo json_encode($json );

You could try:

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

Loop through the results and place each one in an array

use mysqli_fetch_all() to get them all at one time

Ваш ответ на вопрос