MySQL 関数から PDO に移行する方法
概要
PHP 5.5.0 としてMySQL 関数の非推奨を示すものであるため、データベース操作には PDO や MySQLi などの代替関数に移行することが不可欠です。この記事では、コードを PDO に移行するためのガイドを提供し、MySQL サーバーと MSSQL サーバーの両方をカバーしています。
MySQL 関数が廃止される理由
MySQL 関数は古く、セキュリティの危険性が高い脆弱性が存在するため、最新の PHP アプリケーションには適していません。便利な機能が欠けており、安全に適用するのが困難です。 PDO と MySQLI はこれらの問題に対処し、大幅な改善を提供します。
PDO を使用した MySQL への接続
DSN (データ ソース名):
を使用して MSSQL に接続していますPDO
DSN (データ ソース名):
準備されたステートメントを使用したクエリの実行
PDO SQL クエリに挿入されたユーザー入力をサニタイズすることで SQL インジェクションを防止するプリペアド ステートメントを使用します。ステートメントを準備するには:->prepare() を使用して、準備されたステートメントを作成します。
->bindValue():
を使用して準備されたステートメントを実行します引数:
$stmt->execute();:
$result = $dbh->query($SQL);fetch()
は、結果セットから 1 つの行をフェッチします。 fetchAll() は、すべての行を配列にフェッチします。
PDO のサンプル クラス
class pdoConnection { // ... public function prepare($SQL, $params = array()) { $result = $this->connection->prepare($SQL); $result->execute($params); return $result; } } // Usage: $SQL = 'SELECT ID, EMAIL FROM users WHERE user = :username'; $result = $db->prepare($SQL, array(":username" => 'someone'));
MySQL 関数から PDO に移行するには、コードの変更が必要ですが、データベースのセキュリティが大幅に向上し、アプリケーションが将来の PHP バージョンに対応できるようになります。提供されているコード サンプルとサンプル クラスは、スムーズな移行に役立ちます。
以上がMySQL 関数から PDO に移行する必要があるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。