如何用PHP连接MySQL数据库

使用PHP连接MySQL数据库的核心方法是利用PDO(PHP Data Objects)扩展或mysqli扩展,这两者都提供了与MySQL服务器建立安全连接的功能。 无论是开发动态网站还是数据驱动的Web应用,掌握PHP与MySQL的连接技术都是基础且关键的一步,本文将详细介绍这两种主流连接方式,并指导你如何根据项目需求选择最合适的方法。

PDO连接方式

PDO是PHP推荐的数据库抽象层,支持多种数据库(如MySQL、PostgreSQL等),具有预处理语句功能,能有效防止SQL注入攻击。

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

基本连接语法如下:

<?php
$host = 'localhost';
$dbname = '数据库名';
$username = '用户名';
$password = '密码';
try {
    $conn = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "连接成功!";
} catch(PDOException $e) {
    echo "连接失败: " . $e->getMessage();
}
?>

关键点:

  • 连接字符串格式为mysql:host=主机名;dbname=数据库名
  • 使用try-catch块处理连接异常
  • setAttribute()设置错误模式,便于调试

mysqli连接方式

mysqli是MySQL专用的扩展,提供面向对象和面向过程两种编程风格。

面向对象方式:

<?php
$host = 'localhost';
$username = '用户名';
$password = '密码';
$dbname = '数据库名';
// 创建连接
$conn = new mysqli($host, $username, $password, $dbname);
// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "连接成功!";
?>

面向过程方式:

<?php
$conn = mysqli_connect("localhost", "用户名", "密码", "数据库名");
if (!$conn) {
    die("连接失败: " . mysqli_connect_error());
}
echo "连接成功!";
?>

连接参数配置

无论选择哪种方式,都需要准备四个基本参数:

  1. 主机名(通常为localhost)
  2. 数据库用户名
  3. 数据库密码
  4. 数据库名称

安全建议:

  • 将连接信息存储在独立的配置文件中
  • 使用环境变量或配置文件而非硬编码
  • 避免在生产环境中使用默认的MySQL账户

PDO与mysqli的选择

PDO的优势:

  • 数据库无关性,便于切换数据库系统
  • 命名参数支持更好的可读性
  • 更全面的错误处理机制

mysqli的优势:

  • MySQL专属功能支持更完整
  • 多查询支持
  • 某些场景下性能略优

对于新项目,通常推荐使用PDO,因为它更安全、更灵活;而对于需要MySQL特有功能或维护旧代码的项目,mysqli是合适的选择。

连接后的基本操作

连接成功后,可以执行查询:

// 使用PDO查询示例
$sql = "SELECT * FROM users";
$stmt = $conn->prepare($sql);
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
// 使用mysqli查询示例
$sql = "SELECT * FROM users";
$result = $conn->query($sql);

重要: 操作完成后,应关闭数据库连接:

// PDO关闭连接
$conn = null;
// mysqli关闭连接
$conn->close();

常见错误与调试

  1. “Access denied”错误:检查用户名和密码
  2. “Unknown database”错误:确认数据库是否存在
  3. 连接超时:检查主机地址和网络连接
  4. 扩展未启用:确保php.ini中启用了PDO或mysqli扩展

掌握PHP连接MySQL的两种主要方式——PDO和mysqli——是每个PHP开发者的必备技能。 在实际开发中,建议根据项目需求、团队熟悉度和数据库要求选择合适的方法,并始终遵循安全最佳实践,如使用预处理语句防止SQL注入,正确建立数据库连接是构建安全、高效Web应用的基石,值得投入时间深入理解和掌握。

无论是简单的个人博客还是复杂的企业级应用,稳固的数据库连接都是数据驱动型网站成功运行的前提,随着PHP版本的更新,这些连接方法也在不断优化,保持学习最新技术趋势,将帮助你在Web开发道路上走得更远。

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

原文地址:https://www.html4.cn/5858.html发布于:2026-07-20