Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将所有mysql选定行放入一个数组中_Php_Mysql_Arrays - Fatal编程技术网

Php 将所有mysql选定行放入一个数组中

Php 将所有mysql选定行放入一个数组中,php,mysql,arrays,Php,Mysql,Arrays,我想知道php中是否有一个函数可以让我将所有选择的数据放在一个数组中。目前我使用的是mysql_fetch_数组,正如我在手册中读到的那样,该函数无法获取表中的所有记录 $result = mysql_query("SELECT * FROM $tableName"); $array = mysql_fetch_array($result); echo json_encode($array); 出于性能和安全目的,我建议使用MySQLi或MySQL-PDO,但要回

我想知道php中是否有一个函数可以让我将所有选择的数据放在一个数组中。目前我使用的是mysql_fetch_数组,正如我在手册中读到的那样,该函数无法获取表中的所有记录

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

  echo json_encode($array);

出于性能和安全目的,我建议使用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 );

您可以试试:

$rows = array();
while($row = mysql_fetch_array($result)){
  array_push($rows, $row);
}
echo json_encode($rows);
  • 循环遍历结果,并将每个结果放入一个数组中

  • 用于一次获取所有文件


  • 您可以调用mysql\u fetch\u array()来执行任意行时间

    那些
    mysql\u…
    函数既旧又不安全。您应该使用
    mysqli
    或更好的PDOs-,正如Raeki所说,mysql已经很旧了,但除此之外,如果您仍然想循环使用结果,可以使用以下代码:
    $allRows=array();而($row=mysql\u fetch\u array($result){$allRows[]=$row}
    请不要在新代码中使用
    mysql.*
    函数。它们不再被维护,社区已经开始运行。请参阅?相反,您应该了解并使用或。如果您不能决定,将帮助您选择。如果您想了解。如果您正在复制/粘贴,toske需要添加一个结束
    ,暂时<代码>$allRows=array();而($row=mysql\u fetch\u array($result)){$allRows[]=$row}
    $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 
    }