以下是一个简单的PHP实例,展示如何使用PDO进行数据库操作。这个例子中,我们将连接到一个SQLite数据库,并执行一个简单的查询。
1. 连接到数据库
我们需要使用PDO来连接到数据库。以下是连接到SQLite数据库的示例代码:

| 代码片段 | 说明 | |
|---|---|---|
| ```php | $dns='sqlite:database.db'; $pdo=newPDO($dns);``` | 创建一个PDO对象并指定数据源名称(DSN),这里是SQLite数据库文件路径。 |
2. 设置错误模式
为了在发生错误时获取更详细的错误信息,我们需要设置PDO的错误模式。
| 代码片段 | 说明 | |
|---|---|---|
| ```php | $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);``` | 将PDO的错误模式设置为抛出异常。 |
3. 执行查询
接下来,我们可以使用PDO对象执行SQL查询。
| 代码片段 | 说明 | |
|---|---|---|
| ```php | $stmt=$pdo->query('SELECT*FROMusers'); ``` | 使用`query`方法执行SELECT查询,返回一个PDOStatement对象。 |
4. 遍历结果
我们可以使用PDOStatement对象的`fetch`方法遍历查询结果。
| 代码片段 | 说明 | |
|---|---|---|
| ```php | while($row=$stmt->fetch(PDO::FETCH_ASSOC)){ //处理每一行数据 }``` | 使用`while`循环和`fetch`方法遍历结果集,并将每行数据作为关联数组返回。 |
完整示例
以下是完整的PHP脚本示例:
```php
$dns = 'sqlite:database.db';
$pdo = new PDO($dns);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $pdo->query('SELECT * FROM users');
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo 'ID: ' . $row['id'] . ', Name: ' . $row['name'] . '
';
}
>
```
在这个例子中,我们假设有一个名为`users`的表,其中包含`id`和`name`字段。脚本将连接到SQLite数据库,执行查询,并打印出每个用户的ID和名称。

