php8连接mysql
<?php
// 数据库连接参数
$host = 'localhost';
$dbname = 'your_database_name';
$username = 'your_username';
$password = 'your_password';
$charset = 'utf8mb4';
// 创建 DSN(数据源名称)
$dsn = "mysql:host=$host;dbname=$dbname;charset=$charset";
try {
// 创建 PDO 实例
$pdo = new PDO($dsn, $username, $password);
// 设置 PDO 错误模式为异常
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// 连接到数据库成功,可以进行查询操作
echo "成功连接到数据库";
// 示例:查询数据
$stmt = $pdo->query('SELECT * FROM your_table_name');
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
// 处理查询结果
print_r($row);
}
// 关闭数据库连接(其实这不是必要的,因为 PHP 在脚本执行结束时会自动关闭所有连接)
$pdo = null;
} catch (PDOException $e) {
// 捕获并处理异常
throw new PDOException($e->getMessage(), (int)$e->getCode());
}
?>
在这个示例中,我们首先定义了数据库连接参数,包括主机名、数据库名、用户名和密码。然后,我们创建了一个 DSN(数据源名称)字符串,它包含了连接数据库所需的所有信息。
接下来,我们使用 new PDO() 创建了一个 PDO 实例,并设置了错误模式为异常,这样任何数据库错误都会抛出异常,便于我们捕获和处理。
成功连接到数据库后,你可以执行 SQL 查询操作,如上面的示例所示。在这个例子中,我们执行了一个简单的 SELECT 查询,并遍历了查询结果。
请注意,你应该替换 $host、$dbname、$username、$password 和 your_table_name 为你自己的数据库连接参数和表名。
此外,为了安全起见,请确保不要直接将用户输入作为 SQL 语句的一部分,以避免 SQL 注入攻击。你应该使用预处理语句(prepared statements)和参数绑定来执行查询。