You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将MySQL查询的所有行数据存入PHP一维数组?

将MySQL查询结果存入一维数组的实现方法

先看你给出的传统逐行获取数据的代码:

$con = mysqli_connect(YOURLS_DB_HOST,YOURLS_DB_USER,YOURLS_DB_PASS);
mysqli_select_db($con,YOURLS_DB_NAME);
$users=mysqli_query($con,"SELECT * FROM users");
while($user=mysqli_fetch_array($users)) {
    $user['email'];
    $user['pass'];
}

要把所有行数据存入一个一维数组其实很简单,只需要提前初始化一个空数组,然后在循环里把每一行的数据追加进去就行。修改后的代码如下:

$con = mysqli_connect(YOURLS_DB_HOST,YOURLS_DB_USER,YOURLS_DB_PASS);
mysqli_select_db($con,YOURLS_DB_NAME);
$users=mysqli_query($con,"SELECT * FROM users");

// 初始化空数组,用来存储所有用户数据
$all_users = [];

while($user=mysqli_fetch_array($users)) {
    // 将当前行数据追加到一维数组中
    $all_users[] = $user;
}

// 现在$all_users就是包含所有查询结果的一维数组了
// 示例访问方式:获取第一行用户的邮箱 -> $all_users[0]['email']
// 也可以遍历数组处理每一条数据
foreach($all_users as $user_info) {
    echo "邮箱:" . $user_info['email'] . "<br>";
    echo "密码:" . $user_info['pass'] . "<br><hr>";
}

// 记得关闭数据库连接
mysqli_close($con);

额外给你两个实用小建议:

  • 如果你只需要关联数组(仅以字段名为键,无数字索引),可以把mysqli_fetch_array()替换成mysqli_fetch_assoc(),返回的数组结构会更简洁。
  • 实际开发中建议加上错误处理,比如检查数据库连接是否成功、查询是否执行成功,避免出现意外报错。

内容的提问来源于stack exchange,提问作者Dhrubajyoti Sen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:54:09