PHP面向对象-PDO连接数据库(一)

2023-04-29 08:23:05 浏览数 (1)

在PHP中,PDO (PHP Data Objects) 是一个用于访问数据库的轻量级、灵活的抽象层。它可以连接多种类型的数据库,并提供一组统一的方法来执行数据库操作。

连接数据库

在使用PDO连接数据库时,需要提供数据库的相关信息,如主机名、数据库名称、用户名和密码。可以使用以下代码来创建一个PDO对象,并连接到数据库:

代码语言:javascript复制
$dsn = 'mysql:host=localhost;dbname=mydatabase';
$username = 'myusername';
$password = 'mypassword';

try {
    $pdo = new PDO($dsn, $username, $password);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

在这个例子中,我们使用了一个DSN (Data Source Name),它包含了数据库类型、主机名、数据库名称等信息。我们还提供了用户名和密码来验证连接。

如果连接失败,我们将捕获PDOException异常,并输出错误消息。

执行查询

使用PDO执行查询非常简单。可以使用PDO的query()方法来执行一个查询,并获取结果集。以下是一个简单的例子:

代码语言:javascript复制
$sql = "SELECT * FROM users";
$stmt = $pdo->query($sql);

while ($row = $stmt->fetch()) {
    echo $row['username'] . "n";
}

在这个例子中,我们首先定义了一个查询语句。然后,我们使用PDO的query()方法来执行这个查询,并将结果集存储在$stmt变量中。最后,我们使用while循环来遍历结果集,并输出每一行的用户名。

执行预处理语句

预处理语句是一种安全的执行SQL语句的方式,它可以避免SQL注入攻击。使用PDO执行预处理语句非常简单。以下是一个简单的例子:

代码语言:javascript复制
$sql = "SELECT * FROM users WHERE username = :username";
$stmt = $pdo->prepare($sql);
$stmt->execute(['username' => 'john']);

while ($row = $stmt->fetch()) {
    echo $row['username'] . "n";
}

在这个例子中,我们首先定义了一个预处理语句,其中使用了一个占位符:username。然后,我们使用PDO的prepare()方法来准备这个语句,并将其存储在$stmt变量中。接下来,我们使用$stmt的execute()方法来执行这个语句,并将参数传递给占位符。最后,我们使用while循环来遍历结果集,并输出每一行的用户名。

php

0 人点赞