PHP は非常に人気のあるサーバーサイド プログラミング言語であり、その柔軟性と使いやすさにより、Web 開発に推奨される言語の 1 つとなっています。 Web アプリケーション開発では、データベースと対話するプロセスが非常に重要です。PDO (PHP Data Object) は、MySQL、PostgreSQL、Oracle などのさまざまなリレーショナル データベースと対話するための共通インターフェイスを提供する PHP の拡張ライブラリです。この記事では、初心者向けにPDOを使ってデータベースを操作する方法を紹介します。
PDO を使用する前に、PHP に PDO 拡張機能がインストールされているかどうかを確認する必要があります。 phpinfo() 関数を使用して、PHP 拡張機能のリストを表示できます。拡張子リストに PDO 拡張子がない場合は、php.ini ファイルで extension=pdo.so および extension=pdo_mysql.so を設定し、Web サーバーを再起動して PDO 拡張子を有効にする必要があります。
PDO を使用してデータベースに接続すると、データベースに関する関連情報を入力するだけで非常に便利です。以下は、MySQL データベースに接続するためのサンプル コードです。
$dbname = "test"; $host = "localhost"; $user = "root"; $pass = "password"; $dsn = "mysql:host=" . $host . ";dbname=" . $dbname; $options = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"); try { $pdo = new PDO($dsn, $user, $pass, $options); } catch (PDOException $e) { echo "Connection failed: " . $e->getMessage(); }
上記のコードでは、データベース名、ホスト、ユーザー名、パスワードなどのデータベースの関連情報が最初に設定されます。次に、DSN (データ ソース名) を使用してデータベース情報を PDO に転送します。オプション配列には 3 つのオプションが設定されています:
try-catch ブロックは、データベースへの接続時に例外をキャプチャし、エラー情報を出力します。
データベースに正常に接続したら、SQL ステートメントを実行してデータ操作を実行できます。 PDO は、3 つの主要な PDO ステートメント オブジェクトを提供します:
以下は、PDO::query() を使用してレコードをクエリし、出力するサンプル コードです。
$sql = "SELECT * FROM user"; try { $stmt = $pdo->query($sql); while ($row = $stmt->fetch()) { echo "Name: " . $row['name'] . "<br>"; echo "Age: " . $row['age'] . "<br>"; } } catch (PDOException $e) { echo "Query failed: " . $e->getMessage(); }
上記のコードでは、最初にクエリを実行する SQL クエリ ステートメントが定義されています。のユーザーテーブルレコード。次に、query() メソッドを使用して SQL ステートメントを実行すると、$stmt 変数はクエリ結果を含む PDOStatement オブジェクトを返します。次に、 fetch() メソッドを使用して結果セットを走査し、各行に記録された名前と年齢を出力します。クエリの実行中にエラーが発生した場合、try-catch ブロックが例外をキャッチし、エラー メッセージを出力します。
以下は、PDO::prepare() を使用してレコードを挿入するためのサンプル コードです。
$sql = "INSERT INTO user(name, age) VALUES(:name, :age)"; try { $stmt = $pdo->prepare($sql); $stmt->bindParam(':name', $name); $stmt->bindParam(':age', $age); $name = "Alice"; $age = 30; $stmt->execute(); echo "Record inserted successfully."; } catch (PDOException $e) { echo "Insert failed: " . $e->getMessage(); }
上記のコードでは、最初にユーザー テーブルにレコードを挿入する SQL 挿入ステートメントが定義されています。 。 prepare() メソッドを使用して SQL ステートメントを前処理すると、$stmt 変数は準備されたステートメントを含む PDOStatement オブジェクトを返します。次に、bindParam() メソッドを使用して、プレースホルダーを実際のパラメーターにバインドします。次にパラメータ値を設定し、最後にexecute()メソッドを使用してSQL文を実行します。挿入の実行中にエラーが発生した場合、try-catch ブロックが例外をキャッチし、エラー メッセージを出力します。
データベース接続が必要なくなったら、リソースを解放するために適時にデータベース接続を閉じる必要があります。 PDO::null() メソッドを使用して閉じることができます。次に例を示します。
$pdo = null;
上記は、データベース操作に PDO を使用する簡単な例です。 PDO を使用すると便利なだけでなく、移植性と安全性にも優れています。この記事で説明する方法を学ぶことで、すぐに PDO を使用して独自の Web アプリケーション開発を開始できるようになります。
以上がPHP 入門: PDO データベースの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。