要简化PHP和MySQL类操作,你可以使用一些流行的PHP库,如MySQLi和PDO。这些库提供了更简洁、更安全、更易于使用的接口来执行数据库操作。下面是使用MySQLi和PDO的简单示例。
1. MySQLi
MySQLi是MySQL Improved的缩写,它提供了一个面向对象的接口来与MySQL数据库进行交互。以下是一个简单的示例:
// 创建连接
$mysqli = new mysqli("localhost", "username", "password", "database");
// 检查连接
if ($mysqli->connect_error) {
die("连接失败: " . $mysqli->connect_error);
}
// 插入数据
$sql = "INSERT INTO users (name, email) VALUES ('张三', 'zhangsan@example.com')";
if ($mysqli->query($sql) === TRUE) {
echo "新记录插入成功";
} else {
echo "Error: " . $sql . "<br>" . $mysqli->error;
}
// 查询数据
$sql = "SELECT id, name, email FROM users";
$result = $mysqli->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
}
} else {
echo "0 结果";
}
// 关闭连接
$mysqli->close();
2. PDO
PDO(PHP Data Objects)是一个在PHP中访问数据库的轻量级、一致性的接口。以下是一个简单的示例:
// 创建连接
$dsn = "mysql:host=localhost;dbname=database";
$username = "username";
$password = "password";
$options = array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
);
try {
$pdo = new PDO($dsn, $username, $password, $options);
} catch (PDOException $e) {
die("连接失败: " . $e->getMessage());
}
// 插入数据
$sql = "INSERT INTO users (name, email) VALUES (:name, :email)";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':name', $name);
$stmt->bindParam(':email', $email);
$name = '张三';
$email = 'zhangsan@example.com';
$stmt->execute();
// 查询数据
$sql = "SELECT id, name, email FROM users";
$stmt = $pdo->query($sql);
while ($row = $stmt->fetch()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
}
// 关闭连接
$pdo = null;
使用这些库可以让你更方便地执行数据库操作,同时它们还提供了许多高级功能,如预处理语句、事务控制和安全性。