zoukankan      html  css  js  c++  java
  • 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);         //接收结果然后根据情况输出结果                 
        
  • 相关阅读:
    第三周作业(二):分析代码
    第三周作业(一):安装VS以及创建单元测试
    作业:随机四则运算
    分数化简算法
    对应用软件:游戏-《上古卷轴5》的点评
    软件工程始发随想
    Siamese Network介绍
    YOLO v3算法介绍
    Residual Network和Inception Network网络架构介绍
    使用迁移学习(Transfer Learning)完成图像的多标签分类(Multi-Label)任务
  • 原文地址:https://www.cnblogs.com/rose1324/p/8324302.html
Copyright © 2011-2022 走看看