以下是一个使用PHP的PDO库来连接MySQL数据库并实现增删改查的简单工具类示例:

class Database {
    private $host;
    private $db_name;
    private $username;
    private $password;
    private $conn;

    public function __construct($host, $db_name, $username, $password) {
        $this->host = $host;
        $this->db_name = $db_name;
        $this->username = $username;
        $this->password = $password;
    }

    private function connect() {
        try {
            $this->conn = new PDO('mysql:host=' . $this->host . ';dbname=' . $this->db_name, $this->username, $this->password);
            $this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        } catch(PDOException $e) {
            echo 'Connection failed: ' . $e->getMessage();
        }
    }

    public function query($sql, $params = []) {
        $this->connect();
        try {
            $stmt = $this->conn->prepare($sql);
            $stmt->execute($params);
            return $stmt;
        } catch(PDOException $e) {
            echo 'Query failed: ' . $e->getMessage();
        }
    }

    public function insert($table, $data) {
        $columns = implode(', ', array_keys($data));
        $placeholders = ':' . implode(', :', array_keys($data));
        $sql = 'INSERT INTO ' . $table . ' (' . $columns . ') VALUES (' . $placeholders . ')';
        $this->query($sql, $data);
    }

    public function update($table, $data, $where) {
        $set = '';
        foreach ($data as $key => $value) {
            $set .= $key . ' = :' . $key . ', ';
        }
        $set = rtrim($set, ', ');
        $sql = 'UPDATE ' . $table . ' SET ' . $set . ' WHERE ' . $where;
        $this->query($sql, $data);
    }

    public function delete($table, $where) {
        $sql = 'DELETE FROM ' . $table . ' WHERE ' . $where;
        $this->query($sql);
    }

    public function select($table, $columns = '*', $where = '', $params = []) {
        $sql = 'SELECT ' . $columns . ' FROM ' . $table;
        if (!empty($where)) {
            $sql .= ' WHERE ' . $where;
        }
        $stmt = $this->query($sql, $params);
        return $stmt->fetchAll(PDO::FETCH_ASSOC);
    }
}

使用示例:

// 实例化数据库连接
$db = new Database('localhost', 'your_db_name', 'your_username', 'your_password');

// 插入数据
$data = [
    'name' => 'John',
    'age' => 30,
    'email' => 'john@example.com'
];
$db->insert('users', $data);

// 更新数据
$data = [
    'age' => 35,
    'email' => 'updated@example.com'
];
$where = 'id = 1';
$db->update('users', $data, $where);

// 删除数据
$where = 'id = 1';
$db->delete('users', $where);

// 查询数据
$users = $db->select('users', '*', 'age > :age', ['age' => 25]);
foreach ($users as $user) {
    echo $user['name'] . '<br>';
}

请注意,上述示例仅提供了一个基本的数据库工具类,并且没有包含错误处理和安全性验证。在实际使用中,请根据具体需求进一步完善和优化代码,确保安全性和可靠性。

PHP PDO MySQL 数据库操作工具类 - 增删改查示例

原文地址: https://www.cveoy.top/t/topic/Fzz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录