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

从MySQL查询结果生成PHP数组时如何将数据库ID作为数组键

实现方法

你只需要调整循环内的赋值逻辑,手动指定数组的键为ID字段值即可,修改后代码如下:

// 初始化空结果数组,避免历史数据干扰
$liveuserdata = [];
$sql = mysqli_query($conn,"SELECT * FROM `live`");
while($row = mysqli_fetch_array($sql, MYSQLI_ASSOC)){
    // 以当前行的ID字段值作为数组键,写入整行数据
    $liveuserdata[$row['ID']] = $row;
}

逻辑说明

  • 原有写法直接用$liveuserdata[]赋值,PHP会默认生成从0开始的自增数字索引
  • 调整后先将单次查询到的行数据存入临时变量$row,再以$row['ID']作为键写入结果数组,即可得到你期望的输出结构
  • 注意:如果你的数据库表ID存在重复值,后查询到的同ID数据会覆盖之前的内容,这是PHP数组键的唯一性特性导致的,符合常规业务使用逻辑

小提示:你也可以用mysqli_fetch_assoc($sql)代替mysqli_fetch_array($sql, MYSQLI_ASSOC),写法更简洁,效果完全一致。


内容的提问来源于stack exchange,提问作者Glen Keybit

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 02:39:03