繁体   English   中英

如何获取数据的所有行?

[英]How can I fetch all the rows of the data?

我在PHP中有以下代码:

if (empty($_GET)) {
        $response['code'] = 1;
        $response['status'] = $api_response_code[$response['code']]['HTTP Response'];
        $sql = "SELECT * FROM table";
        $result = $conn->query($sql);

        if ($result->num_rows > 0) {
            // output data of each row
            while ($row = $result->fetch_assoc())
                    $response['data'] = $row;
        } else
            $response['data'] = NULL;
}

目前,我只在$ response ['data']的最后一行。 我如何转换此代码以获得所有$ row值?

我尝试初始化$response['data'] = array(); 然后执行$this->response['data'] = $row; 但这并不能解决问题。 请注意,我是PHP的入门者。

您正在使用while提取循环的每次迭代覆盖$response['data'] ,而不是将其追加到数组中。 因此,最后一个记录是唯一保留的记录。

考虑以下调整,其中$data是其自己的数组,用于保存SQL查询结果集的行记录。 然后,可以将整个数组对象附加到初始$response数组(创建嵌套设置)中:

 $i = 0;
 $data = [];
 if ($result->num_rows > 0) {
     // output data of each row
     while ($row = $result->fetch_assoc()) {
            $data[$i] = $row;
            ...

            $i++;
     }
 }

 $response['data'] = $data;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM