首页 >数据库 >mysql教程 >MySQL 函数到 PDO:一种安全且现代的方法?

MySQL 函数到 PDO:一种安全且现代的方法?

Linda Hamilton
Linda Hamilton原创
2025-01-10 09:12:401064浏览

MySQL Functions to PDO: A Secure and Modern Approach?

将 MySQL 函数转换为 PDO

为什么转换?

由于 MySQL 函数的架构已过时,缺乏安全功能以及全局状态依赖性,因此已被弃用。PDO(PHP 数据对象)为数据库操作提供了一种现代化、安全且面向对象的替代方案。

连接到数据库

MySQL:

<code class="language-php">$dsn = 'mysql:dbname=databasename;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';

$dbh = new PDO($dsn, $user, $password);</code>

MSSQL:

<code class="language-php">$dsn = 'sqlsrv:Server=127.0.0.1;Database=databasename';
$user = 'dbuser';
$password = 'dbpass';

$dbh = new PDO($dsn, $user, $password);</code>

执行查询

PDO 使用预处理语句来防止 SQL 注入。

使用命名变量:

<code class="language-php">$SQL = 'SELECT ID, EMAIL FROM users WHERE user=:username';
$stmt = $dbh->prepare($SQL);
$stmt->execute(['username' => $username]);</code>

使用索引变量:

<code class="language-php">$SQL = 'SELECT ID, EMAIL FROM users WHERE user=?';
$stmt = $dbh->prepare($SQL);
$stmt->execute([$username]);</code>

获取结果

使用 fetchAll:

<code class="language-php">$rows = $stmt->fetchAll();</code>

使用 fetch:

<code class="language-php">while ($row = $stmt->fetch()) {
  echo $row['ID'], $row['EMAIL'];
}</code>

以上是MySQL 函数到 PDO:一种安全且现代的方法?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn