インターネット アプリケーション開発において、データベースはすべての開発者が習得しなければならないスキルの 1 つです。 PHP は、動的 Web アプリケーションを開発するための最も一般的なプログラミング言語であり、データベース操作を処理する際にも重要です。 PDO は、PHP 拡張機能でデータベース操作を処理する方法です。ここでは、PDO を使用して基本的なデータベースの追加、削除、変更、クエリ操作を実装する方法を紹介します。
1. データベースへの接続
PHP を使用してデータベース操作を実行する前に、データベースに接続する必要があります。データベースに接続するには、接続する必要があるデータベースの種類、サーバーのアドレスとポート、データベースの名前、ユーザー名、パスワード、その他の情報を PDO に伝える必要があります。次のコードを使用して接続を確立できます。
$dsn = 'mysql:host=localhost;dbname=testdb'; // 服务器地址和数据库名称 $username = 'root'; // 用户名 $password = '123456'; // 密码 try{ $dbh = new PDO($dsn, $username, $password); // 创建PDO对象 }catch(PDOException $e){ echo 'Connection failed: ' . $e->getMessage(); // 连接失败时输出异常信息 }
$dsn 変数には、データベースの種類 (mysql)、サーバーのアドレス (localhost)、および接続するデータベースの名前 (他のタイプのデータベースに接続するには $dsn の値は、必要に応じて変更できます。データベースに正常に接続すると、PDO オブジェクトのメソッドを呼び出して SQL ステートメントを実行できます。
2. データの挿入
データベースへの新しいデータの挿入は、Web アプリケーションの開発において非常に一般的な操作です。次のコードは、PDO を使用して新しいデータを挿入する方法を示しています。
$sql = "INSERT INTO `users` (`username`, `password`) VALUES (?, ?)"; $stmt = $dbh->prepare($sql); // 准备查询语句 $username = 'admin'; // 假设的用户名 $password = md5('123456'); // 假设的密码 $stmt->execute(array($username, $password)); // 执行查询语句
SQL ステートメントを実行する前に、まずクエリ ステートメント $sql を準備する必要があります。クエリ ステートメント内の疑問符 (?) はプレースホルダーであり、PDO は prepare() メソッドの 2 番目のパラメーターに従ってプレースホルダーを置き換えます。 $stmtはSQL文の準備オブジェクトを表し、そのexecute()メソッドを呼び出すことでクエリ文が実行され、プレースホルダが実際のパラメータ値に置き換えられます。
3. データのクエリ
PDO を使用してデータベースにクエリを実行することも簡単です。PDO には、クエリ ステートメントを実行し、クエリ結果を PDOStatement オブジェクトに保存するための query() メソッドが用意されています。以下は、PDO を使用してデータベースをクエリする例です。
$sql = "SELECT * FROM `users` WHERE `username`=?"; $stmt = $dbh->prepare($sql); // 准备查询语句 $username = 'admin'; // 假设要查询的用户名 if($stmt->execute(array($username))){ // 执行查询语句 $rows = $stmt->fetchAll(); // 获取查询结果 foreach($rows as $row){ // 遍历查询结果 echo $row['id'] . ' ' . $row['username'] . ' ' . $row['password'] . '<br/>'; } }
上記のコードでは、$sql 変数に SELECT ステートメントが格納されており、ユーザー名「admin」のユーザー情報をユーザーからクエリします。テーブル。 $stmt 変数は、クエリ ステートメントの準備されたオブジェクトを指します。 execute() メソッドを呼び出してクエリ ステートメントを実行するとき、プレースホルダーの実際の値を配列を通じて PDO に渡します。クエリが正常に実行されると、 fetchAll() メソッドを使用してクエリ結果が取得され、結果は変数 $rows に保存されます。 foreach ループを使用して結果を 1 つずつ出力できます。
4. データの変更
データの挿入と同様、データの変更も一般的な操作の 1 つです。ユーザーのパスワードを変更する例を次に示します。
$sql = "UPDATE `users` SET `password`=? WHERE `username`=?"; $stmt = $dbh->prepare($sql); // 准备更新语句 $username = 'admin'; // 假设要更新的用户名 $new_password = md5('654321'); // 假设要更新的密码 if($stmt->execute(array($new_password, $username))){ // 执行更新语句 echo 'Updated successfully.'; // 更新成功 }
上記のコードでは、$sql 変数に UPDATE ステートメントが格納されており、このステートメントはユーザー テーブル内の「admin」という名前のユーザーのパスワードを更新するために使用されます。 。 update ステートメントでは、SET キーワードの後のパスワード フィールドが、変更される新しいパスワードであることに注意してください。同時に、WHERE キーワードを使用して、更新する必要があるユーザー レコードを指定します。 PDO が更新ステートメントを実行して正常に完了すると、プログラムは更新が成功したことを示すプロンプト メッセージを出力します。
5. データの削除
データの削除はデータの変更と似ており、一般的な操作の 1 つです。以下は、PDO を介してユーザー情報を削除する例です。
$sql = "DELETE FROM `users` WHERE `username`=?"; $stmt = $dbh->prepare($sql); // 准备删除语句 $username = 'admin'; // 假设要删除的用户名 if($stmt->execute(array($username))){ // 执行删除语句 echo 'Deleted successfully.'; // 删除成功 }
上記のコードでは、$sql 変数には、ユーザー名「admin」のユーザー情報を削除するために使用される DELETE ステートメントが格納されています。 update ステートメントと同様に、このステートメントは WHERE キーワードを使用して、削除する必要があるユーザー レコードを指定します。 PDO が削除ステートメントを実行して正常に完了すると、プログラムは削除が成功したことを示すプロンプト メッセージを出力します。
6. 概要
PDO をデータベース操作に使用するには、ある程度のスキルとテクニックが必要ですが、PDO の基本操作をマスターすると、データベースの追加、削除、変更、クエリを実行できるようになります。より効率的に。この記事では、PDO を使用して追加、削除、変更、クエリなどの基本的な操作を実行する方法を紹介しましたが、実際の開発では、開発課題をより適切に解決するために、より詳細な PDO 操作技術を適用する必要があります。継続的な学習と実践を通じて、PDO の高度なテクノロジーを習得し、より優れた Web アプリケーションを開発できるようになります。
以上がPDOデータベースを使用して追加、削除、変更、確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。