PHP如何连接MySQL数据库:使用mysqli与PDO对象详解

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

php如何连接mysql对象,PHP连接MySQL对象方法详解

使用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(数据源名称)。

连接后的基本操作与注意事项

  1. 执行查询
    • mysqli示例:$result = $conn->query("SELECT * FROM users");
    • PDO示例:$stmt = $conn->prepare("SELECT * FROM users"); $stmt->execute();
  2. 关闭连接
    • mysqli:$conn->close();
    • PDO:$conn = null;
  3. 安全建议
    • 始终使用预处理语句处理用户输入,避免SQL注入。
    • 将数据库凭据存储在环境变量或配置文件中,切勿硬编码在代码中
    • 定期更新PHP和MySQL版本,确保安全补丁生效。

PHP连接MySQL数据库时,mysqli适合纯MySQL项目,而PDO更适合多数据库支持或高安全需求场景,开发者应根据项目特点选择合适方案,并遵循安全编码实践,以保障数据操作的稳定与可靠。

未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网

原文地址:https://www.html4.cn/17698.html发布于:2026-09-18