mysql如何连接php_mysql与php连接的配置与代码示例

答案:PHP连接MySQL需启用MySQLi或PDO扩展,通过配置php.ini并重启服务器,使用MySQLi过程或对象方式,或更推荐的PDO方式建立安全连接,注意检查服务状态与凭证正确性。

mysql如何连接php_mysql与php连接的配置与代码示例

PHP 连接 MySQL 通常使用 MySQLiPDO 扩展,而不是已废弃的 php_mysql(在 PHP 5.5 中弃用,PHP 7.0 中移除)。以下介绍如何配置并使用现代方式连接 MySQL 数据库。

1. 确保 PHP 环境支持 MySQL 扩展

确认你的 PHP 安装启用了必要的扩展:

  • MySQLi:extension=mysqli
  • PDO_MySQL:extension=pdo_mysql

可在 php.ini 文件中检查并取消注释以下行:

extension=mysqli
extension=pdo_mysql

重启 Web 服务器(如 Apache 或 Nginx)使配置生效。

2. 使用 MySQLi 面向过程方式连接

适用于简单项目或初学者:

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test_db";

// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检查连接
if (!$conn) {
    die("连接失败: " . mysqli_connect_error());
}
echo "MySQLi 连接成功";
?>

3. 使用 MySQLi 面向对象方式连接

更推荐的方式,结构清晰:

《PHP设计模式指南》中文版 《PHP设计模式指南》中文版

《PHP设计模式》首先介绍了设计模式,讲述了设计模式的使用及重要性,并且详细说明了应用设计模式的场合。接下来,本书通过代码示例介绍了许多设计模式。最后,本书通过全面深入的案例分析说明了如何使用设计模式来计划新的应用程序,如何采用PHP语言编写这些模式,以及如何使用书中介绍的设计模式修正和重构已有的代码块。作者采用专业的、便于使用的格式来介绍相关的概念,自学成才的编程人员与经过更多正规培训的编程人员

《PHP设计模式指南》中文版 341 查看详情 《PHP设计模式指南》中文版
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test_db";

// 创建连接对象
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "MySQLi OOP 连接成功";
?>

4. 使用 PDO 连接(推荐用于新项目)

PDO 支持多种数据库,安全性高,便于预处理语句:

<?php
$servername = "localhost";
$username = "root";
$password = &quot;";
$dbname = "test_db";

try {
    $pdo = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // 设置 PDO 错误模式为异常
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "PDO 连接成功";
} catch(PDOException $e) {
    die("连接失败: " . $e->getMessage());
}
?>

5. 常见问题与建议

遇到连接失败时,检查以下几点:

  • MySQL 服务是否正在运行
  • 用户名和密码是否正确
  • 数据库主机地址是否准确(远程连接需授权)
  • 防火墙或 SELinux 是否阻止了端口(默认 3306)

建议使用环境变量或配置文件存储数据库凭证,避免硬编码。

基本上就这些。选择 MySQLi 或 PDO 都可以,PDO 更灵活,适合未来扩展。

以上就是mysql如何连接php_mysql与php连接的配置与代码示例的详细内容,更多请关注其它相关文章!

本文转自网络,如有侵权请联系客服删除。