PHP データ オブジェクト (PDO) を使用してオブジェクト指向の PHP データベース接続を確立し、さまざまなデータベースと対話するための統一インターフェイスを提供します。 PDO 接続を確立するには、データ ソース名 (DSN)、ユーザー名、およびパスワードが必要です。 SQL クエリを実行するには query() メソッドを使用し、結果を取得するには fetchAll() メソッドを使用します。実践的な例では、PHP フォームを MySQL データベースに接続し、データを挿入する方法を示します。
PDO を使用してオブジェクト指向 PHP データベース接続を確立する
オブジェクト指向 PHP データベース接続では、さまざまなデータベースと対話するための統一インターフェイスを提供する PHP データ オブジェクト (PDO) クラス ライブラリを使用します。 PDO を使用すると、オブジェクト指向の方法でデータベースにアクセスできるため、コードの編成と保守が容易になります。
PDO 接続を確立する
PDO 接続を確立するには、PDO
コンストラクターを使用する必要があります。このコンストラクターは次のパラメーターを受け入れます: PDO
构造函数。此构造函数接受以下参数:
$dsn = 'mysql:host=localhost;dbname=my_database'; $username = 'root'; $password = ''; try { $pdo = new PDO($dsn, $username, $password); } catch (PDOException $e) { echo 'Connection failed: ' . $e->getMessage(); die(); }
执行查询
可以使用 query()
方法执行 SQL 查询。此方法返回一个 PDOStatement 对象,该对象表示查询结果。
$sql = 'SELECT * FROM users WHERE name LIKE ?'; $stmt = $pdo->prepare($sql); $stmt->execute(['%joh%']);
获取结果
可以通过 fetchAll()
: データベース サーバー、データベース名、およびその他のデータベース固有の接続情報を指定します。 DSN の形式はデータベースの種類によって異なります。
: データベースに接続するためのパスワード。
$users = $stmt->fetchAll(PDO::FETCH_ASSOC);
クエリの実行
🎜🎜query()
メソッドを使用して SQL クエリを実行できます。このメソッドは、クエリ結果を表す PDOStatement オブジェクトを返します。 🎜<!-- form.php --> <form action="submit.php" method="post"> <label for="name">姓名:</label> <input type="text" id="name" name="name"> <input type="submit" value="提交"> </form>🎜🎜結果を取得する🎜🎜🎜 クエリ結果は、
fetchAll()
メソッドを通じて取得できます。このメソッドは、各要素が連想配列である結果配列を返します。 🎜// submit.php $dsn = 'mysql:host=localhost;dbname=my_database'; $username = 'root'; $password = ''; try { $pdo = new PDO($dsn, $username, $password); } catch (PDOException $e) { echo 'Connection failed: ' . $e->getMessage(); die(); } $name = $_POST['name']; $sql = 'INSERT INTO users (name) VALUES (?)'; $stmt = $pdo->prepare($sql); $stmt->execute([$name]); header('Location: success.php');🎜🎜実践例🎜🎜🎜 ユーザーが自分の名前を入力してデータベースに挿入できる基本的な PHP フォームを考えてみましょう。 PDO を使用してこのフォームを MySQL データベースに接続します。この例では、PDO を使用して PHP フォームを MySQL データベースに接続し、データを挿入する方法を示します。 🎜
以上がPDO を使用したオブジェクト指向 PHP データベース接続の確立の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。