PHPでデータベースと連携する際、主に使用される拡張機能は PDO(PHP Data Objects) と MySQLi(MySQL Improved) です。どちらもMySQLなどのデータベースと接続して、SQLクエリを実行するために使われますが、それぞれに特徴があります。
1. PDOによるクエリの実行
特徴:
-
複数のデータベース(MySQL, PostgreSQL, SQLiteなど)をサポート
-
プリペアドステートメントによるSQLインジェクション対策が容易
基本的な使用手順:
2. MySQLiによるクエリの実行
特徴:
-
MySQL専用(他のDBは使えない)
-
手続き型とオブジェクト指向型の両方に対応
手続き型の使用例:
3. 比較と推奨
| 項目 | PDO | MySQLi |
|---|---|---|
| 対応DB | 複数 | MySQLのみ |
| スタイル | オブジェクト指向のみ | 両対応 |
| プレースホルダ | 名前付きプレースホルダ | ?マークのみ |
| 柔軟性 | 高い | 限定的 |
推奨:
今後の保守性や移植性を考えると、PDOの使用が望ましいです。特にセキュリティやコードの再利用性を重視する場合、PDOのプリペアドステートメントは強力な手段となります。
生成日:2025/05/03