ホームページ >バックエンド開発 >PHPチュートリアル >PHP と PDO: SQL クエリを実行する方法

PHP と PDO: SQL クエリを実行する方法

王林
王林オリジナル
2023-07-28 11:25:061250ブラウズ

PHP と PDO: SQL クエリ ステートメントを実行する方法

概要:
PHP は、Web アプリケーションの開発に広く使用されている人気のあるサーバー側スクリプト言語です。 Web アプリケーションの開発プロセスでは、データベースとの対話は非常に一般的な要件です。 PHP では、PDO (PHP Data Objects) はデータベースと対話するための強力な PHP 拡張機能です。この記事では、PHP と PDO を使用して SQL クエリ ステートメントを実行する方法を紹介します。

  1. データベースへの接続
    PDO を使用して SQL クエリを実行する前に、まずデータベースに接続する必要があります。 PDO コンストラクターを使用して、新しい PDO オブジェクトを作成し、次のようにデータベースの接続情報を指定できます。
$dsn = 'mysql:host=localhost;dbname=test';
$username = 'root';
$password = '';

try {
    $pdo = new PDO($dsn, $username, $password);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

上記のコードは、データベースの例として MySQL を使用し、# という名前のデータベースに接続します。 ##テスト データベース。実際の使用においては、実際の状況に応じて、対応する接続​​情報を変更する必要があります。

    SQL クエリ ステートメントの実行
  1. 接続が成功したら、PDO オブジェクトの
    query() メソッドを使用して SQL クエリ ステートメントを実行できます。たとえば、以下に示すように、単純な SELECT ステートメントを実行して、すべてのユーザー レコードを取得します。
  2. $stmt = $pdo->query('SELECT * FROM users');
    $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    foreach ($result as $row) {
        echo $row['name'] . ' - ' . $row['email'] . '<br>';
    }
上記のコードは、SELECT ステートメントを実行して、

users テーブルからすべてのレコードを取得します。そして結果を $result 変数に保存します。次に、結果セットをループして、各行の「name」フィールドと「email」フィールドの値を出力します。

    バインドされたパラメーターを使用する
  1. SQL クエリ ステートメントを実行する場合、SQL インジェクション攻撃などのセキュリティの問題を回避するために、バインドされたパラメーターを使用することをお勧めします。 PDO は、SQL ステートメントを準備し、パラメーターをバインドして実行する
    prepare() メソッドを提供します。たとえば、以下に示すように、パラメーターを指定して SELECT ステートメントを実行して、指定したユーザーのレコードを取得します。
  2. $stmt = $pdo->prepare('SELECT * FROM users WHERE id = :id');
    $stmt->bindParam(':id', $id, PDO::PARAM_INT);
    $stmt->execute();
    
    $result = $stmt->fetch(PDO::FETCH_ASSOC);
    
    echo $result['name'] . ' - ' . $result['email'];
上記のコードは、パラメーターを指定して SELECT ステートメントを準備します。ここで、

:id はパラメータのプレースホルダです。次に、bindParam() メソッドを使用して実際のパラメーター値をプレースホルダーにバインドし、パラメーターのデータ型を指定します。最後に、execute() メソッドを呼び出して SQL クエリ ステートメントを実行し、fetch() メソッドを通じてレコード行の結果を取得します。

概要:

この記事では、PHP と PDO を使用して SQL クエリ ステートメントを実行する方法を紹介します。まず、PDO オブジェクトを使用してデータベースに接続する必要があります。次に、
query() メソッドを使用して SQL クエリを実行するか、prepare() メソッドを使用して SQL ステートメントを準備し、バインドされたパラメーターを使用してそれを実行します。単純なクエリの場合は、query() メソッドを使用します。パラメータを含むクエリの場合は、prepare() メソッドを使用してパラメータをバインドすることをお勧めします。 PDO の使用法を理解して習得することで、データベースをより安全かつ効率的に操作できるようになります。

以上がPHP と PDO: SQL クエリを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。