PDO方式封装数据库类

PDO方式封装数据库类(仅供参考)

    public function connect()
    {
        $dsn = $this->config['type'].":host=".$this->config['host'].";dbname=".$this->config['databasename'];
        $this->pdo = new PDO($dsn,$this->config['user'],$this->config['pwd']);
        return $this->pdo;
    }
    /**
     * @param $param
     * @return $this
     * 设置表名
     */
    public function table($param)
    {
        $this->table = $param;
        return $this;
    }

    public function where($where)
    {
        $this->where = $where;
        return $this;
    }

    /**
     * 查询所有的mysqli方式
     */
    public function all()
    {
        $sql = "select * from ".$this->table." where ".$this->where;
//        $res = $this->pdo->query($sql)->fetchAll();
        /**
         * PDO设置
         */
        if($this->getresult == "num"){
            $res = $this->pdo->query($sql)->fetchAll(PDO::FETCH_NUM);
        }elseif($this->getresult == "assoc"){
            $res = $this->pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC);
        }else{
            $res = $this->pdo->query($sql)->fetchAll();
        }
        return $res;
    }
    /**
     * @return array|null
     * 查询单条数据 mysqli方式
     */
    public function get()
    {
        $sql = "select * from ".$this->table." where ".$this->where;
        /**
         * PDO设置
         */
        if($this->getresult == "num"){
            $res = $this->pdo->query($sql)->fetch(PDO::FETCH_NUM);
        }elseif($this->getresult == "assoc"){
            $res = $this->pdo->query($sql)->fetch(PDO::FETCH_ASSOC);
        }else{
            $res = $this->pdo->query($sql)->fetch();
        }
        return $res;
    }

    /**
     * @content PDO
     */
    public function delete()
    {
        $sql = 'delete from '.$this->table .$this->where;
        $res = $this->pdo->prepare($sql);
        $id = 9;
        $res->bindValue(1,$id);
        $res->execute();
        $affect_row = $res->rowCount();
        return $affect_row;
    }

    /**
     * 关联数据
     */
    public function getnum()
    {
        $this->getresult = "num";
        return $this;
    }

    /**
     * 索引数组
     */
    public function getassoc()
    {
        $this->getresult = "assoc";
        return $this;
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在PHP中,我们可以使用封装来连接数据库和引入包。 首先,连接数据库是在PHP中与数据库通信的一个重要步骤。我们可以使用MySQLi(MySQL Improved)或PDO(PHP Data Objects)来连接数据库。这些是PHP提供的两种常用的数据库拓展。通过使用这些拓展,我们可以轻松地连接到各种数据库,并执行各种SQL语句以实现数据的增删改查。为了方便复用和维护,我们可以将连接数据库的代码封装到一个函数或一个中。比如,我们可以将数据库连接封装在一个名为"db_connect.php"的文件中: ```php <?php function db_connect(){ $host = "localhost"; $username = "root"; $password = ""; $dbname = "mydatabase"; $conn = new mysqli($host, $username, $password, $dbname); if ($conn->connect_error) { die("数据库连接失败: " . $conn->connect_error); } return $conn; } ``` 这样,当我们需要连接到数据库时,只需引入这个文件,并调用`db_connect()`函数即可。 其次,引入包是在PHP中使用第三方库或组件的一种常见方式。在PHP中,我们可以使用`require`或`include`语句来引入包或外部文件。一般而言,我们将这些引入包的语句放在PHP文件的顶部。比如,如果我们想引入一个名为"example.php"的文件,我们可以这样写: ```php <?php require_once("example.php"); ``` 这将会将"example.php"中的代码引入到当前的PHP文件中,使我们可以使用那个文件中定义的、函数、常量等。 总结起来,通过封装数据库连接和引入包,我们可以提高代码的复用性和可维护性,使我们能够更加高效地操作数据库和使用第三方组件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值