PHP封装的mysqli数据库操作类示例

下面是一个PHP封装mysqli数据库操作的类示例:

class DB 
{
    private $host = 'localhost';
    private $user = 'root';
    private $pwd = '';
    private $dbName = 'test';
    private $link;
    public function __construct() 
    {
        $this->link = new mysqli($this->host, $this->user, $this->pwd, $this->dbName);
        if ($this->link->connect_error) {
            die('数据库连接失败: ' . $this->link->connect_error);
        } 
    }
    public function query($sql) 
    {
        $result = $this->link->query($sql);
        if ($result === false) {
            die('SQL执行有误:' . $this->link->error);
        }
        return $result;
    }
    public function fetch($sql) 
    {
        $result = $this->query($sql);
        if($result->num_rows > 0) {
            while($row = $result->fetch_assoc()) {
                $data[] = $row;  
            }
        }
        return $data;
    }  
    public function insert($table, $params)
    {
        $fields = '';
        $values = '';
        foreach ($params as $key => $value) {
            $fields .= $key . ','; 
            $values .= '"' . $value . '",';  
        }
        $fields = rtrim($fields, ',');
        $values = rtrim($values, ',');
        $sql = "INSERT INTO $table($fields) VALUES($values)";
        if($this->query($sql)) {
            return true; 
        }else{
            return false;
        }
    }
}

该类包含以下方法:- __construct():构造方法,用于连接数据库

– query():运行SQL查询语句,返回结果集

– fetch():从SQL查询中获取所有数据,返回数组

– insert():执行SQL插入语句,返回布尔值使用示例:

$db = new DB();  //连接数据库
$result = $db->query('SELECT * FROM user');  //运行查询
$users = $db->fetch('SELECT * FROM user');   //获取所有用户数据
$status = $db->insert('user', ['name' => 'John', 'age' => 20]);  //插入新用户

数据库操作类对mysqli进行了基本封装,可以更简单地执行数据库的查询、插入等操作。

如果需要更高级的数据库操作,可以继续在该类中添加和完善更多方法。

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发

请登录后发表评论