首頁  >  文章  >  後端開發  >  PHP与数据库链接

PHP与数据库链接

WBOY
WBOY原創
2016-06-23 13:45:41867瀏覽

我看了下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每一次?取一???,所以需要循?去?取。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn