php 8 提供了两种新的 mysql 连接特性:命名参数和结果集。命名参数允许使用名称引用查询中的参数,提高了可读性和可维护性;结果集简化了从查询结果中获取数据的过程。使用示例:使用命名参数和结果集与 mysql 数据库连接并检索数据。
PHP 8 中使用 MySQL 连接
PHP 8 引入了以下两种与 MySQL 连接相关的新特性:
1. 命名参数
命名参数允许您使用名称而不是位置来引用查询中的参数。这提高了可读性和可维护性。
立即学习“PHP免费学习笔记(深入)”;
$stmt = $pdo->prepare('SELECT * FROM users WHERE name = :name');
$stmt->bindParam(':name', $name);
2. 结果集
PDO::query() 返回的不再是简单的语句处理对象,而是一个专门的结果集。这使得从结果集中获取数据更加容易。
$stmt = $pdo->query('SELECT * FROM users');
foreach ($stmt as $row) {
// $row 是一个关联数组
}
使用示例
下面是一个使用 PHP 8 与 MySQL 连接的代码示例:
<?php $host = 'localhost';
$user = 'root';
$pass = '';
$db = 'database_name';
try {
$pdo = new PDO("mysql:host=$host;dbname=$db", $user, $pass);
// 设置 PDO 错误模式为异常
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// 使用命名参数
$stmt = $pdo->prepare('SELECT * FROM users WHERE name = :name');
$stmt->bindParam(':name', $name);
$stmt->execute();
// 使用结果集
$stmt = $pdo->query('SELECT * FROM users');
foreach ($stmt as $row) {
echo "{$row['name']} - {$row['email']}n";
}
} catch (PDOException $e) {
// 处理异常
}