php中的pdo数据库操作类
作者:野牛程序员:2024-01-31 18:22:57php阅读 2907
PDO(PHP Data Objects)是PHP中用于访问数据库的一种方法,它提供了一个轻量级、一致的接口来与不同的数据库进行交互。以下是一个简单的PDO数据库操作类的示例:
class Database {
private $host;
private $username;
private $password;
private $database;
private $dsn;
private $pdo;
public function __construct($host, $username, $password, $database) {
$this->host = $host;
$this->username = $username;
$this->password = $password;
$this->database = $database;
$this->dsn = "mysql:host=$host;dbname=$database";
$this->connect();
}
private function connect() {
try {
$this->pdo = new PDO($this->dsn, $this->username, $this->password);
// 设置PDO错误模式为异常
$this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
die("Connection failed: " . $e->getMessage());
}
}
public function query($sql, $params = []) {
try {
$stmt = $this->pdo->prepare($sql);
$stmt->execute($params);
return $stmt;
} catch (PDOException $e) {
die("Query failed: " . $e->getMessage());
}
}
public function fetchAll($sql, $params = []) {
$stmt = $this->query($sql, $params);
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
public function fetchOne($sql, $params = []) {
$stmt = $this->query($sql, $params);
return $stmt->fetch(PDO::FETCH_ASSOC);
}
public function getLastInsertId() {
return $this->pdo->lastInsertId();
}
}使用该类可以执行数据库操作,例如:
// 实例化数据库对象
$db = new Database('localhost', 'username', 'password', 'database_name');
// 执行查询并获取所有结果
$results = $db->fetchAll("SELECT * FROM table_name");
// 执行查询并获取单个结果
$result = $db->fetchOne("SELECT * FROM table_name WHERE id = ?", [1]);
// 执行插入操作
$db->query("INSERT INTO table_name (column1, column2) VALUES (?, ?)", ['value1', 'value2']);
// 获取最后插入的ID
$lastInsertId = $db->getLastInsertId();这是一个简单的PDO数据库操作类,可以根据自己的需求进行扩展和定制。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:Mysql索引结构及常见索引的区别
- 下一篇:MySQL主从复制原理
