PHP如何连接MySQL数据库:使用mysqli与PDO对象详解
PHP连接MySQL数据库主要通过mysqli和PDO(PHP Data Objects) 两种对象实现,它们提供了面向对象的编程接口,能高效、安全地操作数据库,以下是具体方法与步骤:

使用mysqli对象连接MySQL
mysqli是MySQL的改进扩展,支持面向对象和面向过程两种方式,面向对象示例代码如下:
<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
?>
关键点:
- 通过
new mysqli()实例化对象,参数依次为服务器名、用户名、密码、数据库名。 - 使用
connect_error属性检查连接状态,失败时需处理错误。 - 务必在生产环境中避免使用默认密码,并建议启用SSL加密连接。
使用PDO对象连接MySQL
PDO提供统一的数据库访问接口,支持多种数据库,更灵活且能有效防止SQL注入,示例代码如下:
<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "myDB";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "连接成功";
} catch(PDOException $e) {
echo "连接失败: " . $e->getMessage();
}
?>
优势:
- 预编译语句(Prepared Statements) 可提升安全性,自动过滤恶意输入。
- 错误处理通过
try-catch块实现,更符合现代编程规范。 - 便于切换数据库类型(如SQLite、PostgreSQL),仅需修改DSN(数据源名称)。
连接后的基本操作与注意事项
- 执行查询:
- mysqli示例:
$result = $conn->query("SELECT * FROM users"); - PDO示例:
$stmt = $conn->prepare("SELECT * FROM users"); $stmt->execute();
- mysqli示例:
- 关闭连接:
- mysqli:
$conn->close(); - PDO:
$conn = null;
- mysqli:
- 安全建议:
- 始终使用预处理语句处理用户输入,避免SQL注入。
- 将数据库凭据存储在环境变量或配置文件中,切勿硬编码在代码中。
- 定期更新PHP和MySQL版本,确保安全补丁生效。
PHP连接MySQL数据库时,mysqli适合纯MySQL项目,而PDO更适合多数据库支持或高安全需求场景,开发者应根据项目特点选择合适方案,并遵循安全编码实践,以保障数据操作的稳定与可靠。
未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网。
原文地址:https://www.html4.cn/17698.html发布于:2026-09-18





