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

如何将mysqli结果集行作为索引子数组存入结果数组?

调整MySQLi结果集循环,生成目标数组结构

嘿,这事儿很简单,我帮你改下while循环就能搞定!核心就是要让每次循环取出的行是索引数组,而不是关联数组,然后把它直接存入$rows['data']数组里。

修改后的代码示例

假设你的MySQLi结果集变量是$result,先初始化好目标数组,再用fetch_row()来获取索引形式的行数据:

// 初始化目标数组
$rows = ['data' => []];

// 循环遍历结果集,将每行索引数组存入$data
while ($row = $result->fetch_row()) {
    $rows['data'][] = $row;
}

可选写法(效果一致)

如果你习惯用fetch_array(),可以指定MYSQLI_NUM参数来强制返回索引数组:

$rows = ['data' => []];

while ($row = $result->fetch_array(MYSQLI_NUM)) {
    $rows['data'][] = $row;
}

效果示例

假设你的结果集有两列(比如id和username),两行记录:

idusername
1Alice
2Bob

最终生成的$rows数组结构会是:

Array
(
    [data] => Array
        (
            [0] => Array
                (
                    [0] => 1
                    [1] => Alice
                )
            [1] => Array
                (
                    [0] => 2
                    [1] => Bob
                )
        )
)

这样就完全符合你要的“每一行作为索引子数组存入$rows['data']”的需求啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 09:30:09