PHP用加载类方法做数据访问

$db = new MySQLi("localhost","root","123","mydb");
    $sql = "select * from car where {$tj} and {$tj2}";
    echo $sql;
    $relsut = $db->query($sql);
    if($relsut){
        $arr = $relsut->fetch_all();
        if(empty($arr)){
            echo "未查到数据!";
        }else{
            foreach($arr as $v){
                echo "<tr>
            <td>{$v[0]}</td>
            <td>{$v[1]}</td>
            <td>{$v[2]}</td>
            <td>{$v[4]}</td>
            <td>{$v[7]}</td>
        </tr>";
            }
        }
    }

以前我们访问数据库的时候,要做的步骤如上代码所示:

大体步骤:

建立一个数据库连接 ——>编写SQL语句——>执行SQL语句——>接收、判断执行结果——>遍历数据——>输出结果。

中间的步骤如果重复多次,可能代码也会重复很多次。

现在我们学习了面向对象,就可以把中间的步骤封装成一个 数据访问的类,每次加载这个数据访问类,就比以前效率也提高。

<?php
class DBDA{
    public $host="localhost"; //服务器地址
    public $uid="root"; //用户名
    public $pwd="123"; //密码
    public $dbname="mydb"; //常用数据库名称
    
    /*
        执行一条SQL语句的方法
        @param sql 要执行的SQL语句
        @param type SQL语句的类型,0代表查询 1代表增删改
        @return 如果是查询语句返回二维数组,如果是增删改返回true或false
    */
    public function query($sql,$type=0){
        $db = new MySQLi($this->host,$this->uid,$this->pwd,$this->dbname);
        $result = $db->query($sql);
        if($type){
            return $result;
        }else{
            return $result->fetch_all();
        }
    }
}

以后我们做数据访问的时候,就可以加载这个DBDA.class.php ,减少很多代码量,提高效率了。

require_once "../DBDA.class.php";   //加载DBDA.class.php
    $db = new DBDA();                   //新建数据库连接
    $sql = "";                          //编写SQL语句
    $result = $db->query($sql);         //接收结果然后根据情况输出结果                 
    
原文地址:https://www.cnblogs.com/rose1324/p/8324302.html