欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP与数据库链接

程序员文章站 2024-02-07 17:54:34
...
我看了下DISCUZ的数据库工具类
我有个疑惑:
function dql($sql)
{
$res=$this->mysqli->query($sql);
if(!empty($res))
{
$arr=array();
while ($row=$res->fetch_row())
{$arr[]=$row;}
return $arr;
$res->free_result();
}else
{return null;}
他是把从数据库取出来的数据变成一个数组$ROW然后又把$row 存储到了$arr ,那这样他返回的就是一个二维数组
那为什么不直接返回一个$row?何必再进行2次封装呢?


回复讨论(解决方案)

返回一个$row , 你还怎么获取所有记录呢。

如果只返回$row,只会取得最后一条数据。
现在返回的是二维数组,返回的是表结构的多条数据。

$row是一条记录如果不封装成二维数组你永远获得一条记录就算你循环也是一条记录(表里最后一条记录)。
为了获取更多记录所以要将一维数组放到二维数组里面这样循环的时候不会覆盖前面的数据也就把所以数据取出来了。

$row每一次?取一???,所以需要循?去?取。

相关标签: PHP与数据库链接