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);         //接收结果然后根据情况输出结果                 
        
  • 相关阅读:
    1、springcloud gateway
    -webkit-overflow-scrolling:touch 相关
    SpringBoot(一)原理剖析:SpringApplication启动原理
    JAVA基础面试题
    JVM面试题
    排序(四)选择排序:简单选择排序
    排序(三)插入排序:简单插入排序和希尔排序
    排序(二)交换排序:冒泡排序与快速排序
    排序(一)简介
    多线程面试题
  • 原文地址:https://www.cnblogs.com/rose1324/p/8324302.html
Copyright © 2011-2022 走看看