温馨提示×

php如何配置mysql连接

小樊
61
2025-05-06 19:40:49
栏目: 云计算

在 PHP 中配置 MySQL 连接通常使用 mysqliPDO 扩展。以下是这两种方法的详细说明和示例:

使用 mysqli 扩展

mysqli 是 MySQL Improved Extension 的缩写,提供了面向对象和过程化的接口来与 MySQL 数据库进行交互。

示例代码(面向对象风格):

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

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

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

// 执行 SQL 查询
$sql = "SELECT id, name FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // 输出每行数据
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} else {
    echo "0 结果";
}
$conn->close();
?>

示例代码(过程化风格):

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

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

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

// 执行 SQL 查询
$sql = "SELECT id, name FROM users";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
    // 输出每行数据
    while($row = mysqli_fetch_assoc($result)) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} else {
    echo "0 结果";
}
mysqli_close($conn);
?>

使用 PDO 扩展

PDO 是 PHP Data Objects 的缩写,提供了一个数据访问抽象层,这意味着不管使用哪种数据库,都可以用相同的函数来查询和获取数据。

示例代码:

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // 设置 PDO 错误模式为异常
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "连接成功";

    // 执行 SQL 查询
    $sql = "SELECT id, name FROM users";
    $stmt = $conn->query($sql);

    if ($stmt->rowCount() > 0) {
        // 输出每行数据
        while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
            echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
        }
    } else {
        echo "0 结果";
    }
} catch(PDOException $e) {
    echo "连接失败: " . $e->getMessage();
}
$conn = null;
?>

注意事项

  1. 安全性:不要在代码中硬编码数据库凭据。可以使用环境变量或配置文件来存储这些敏感信息,并确保这些文件的权限设置正确。
  2. 错误处理:在生产环境中,不要显示详细的错误信息给用户,这可能会暴露敏感信息。可以使用日志记录错误信息。
  3. 资源管理:确保在使用完数据库连接后关闭连接,以释放资源。

通过以上方法,你可以在 PHP 中配置和使用 MySQL 连接。选择 mysqli 还是 PDO 取决于你的具体需求和个人偏好。

0