温馨提示×

LAMP中PHP如何连接数据库

小樊
52
2025-05-19 12:47:06
栏目: 编程语言

在LAMP(Linux, Apache, MySQL, PHP)环境中,PHP连接数据库通常是通过MySQLi或PDO(PHP Data Objects)扩展来实现的。以下是使用这两种方法连接MySQL数据库的基本步骤:

使用MySQLi扩展连接数据库

  1. 创建数据库连接

    <?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 "连接成功";
    ?>
    
  2. 执行SQL查询

    <?php
    // 假设已经建立了连接 $conn
    $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();
    ?>
    

使用PDO扩展连接数据库

  1. 创建数据库连接

    <?php
    // 数据库主机名
    $servername = "localhost";
    // 数据库用户名
    $username = "your_username";
    // 数据库密码
    $password = "your_password";
    // 数据库名
    $dbname = "your_database";
    
    try {
        // 创建PDO实例
        $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
        // 设置PDO错误模式为异常
        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        echo "连接成功";
    } catch(PDOException $e) {
        echo "连接失败: " . $e->getMessage();
    }
    ?>
    
  2. 执行SQL查询

    <?php
    // 假设已经建立了连接 $conn
    $sql = "SELECT id, name FROM users";
    try {
        // 执行查询并设置结果模式为关联数组
        $stmt = $conn->query($sql);
        $results = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
        foreach ($results as $row) {
            echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
        }
    } catch(PDOException $e) {
        echo "查询失败: " . $e->getMessage();
    }
    $conn = null; // 关闭连接
    ?>
    

注意事项

  • 安全性:在实际应用中,不要将数据库的用户名和密码硬编码在脚本中,可以使用配置文件或环境变量来存储这些敏感信息。
  • 错误处理:在生产环境中,应该避免显示详细的错误信息给最终用户,以防止泄露敏感信息。
  • 资源管理:确保在使用完数据库连接后关闭连接,以释放资源。

通过以上步骤,你可以在LAMP环境中使用PHP连接并操作MySQL数据库。

0