- PDO bindParamの基本的な使用方法 bindParamメソッドは、プリペアドステートメント内のプレースホルダーに値をバインドするために使用されます。以下は、基本的な使用方法の例です。
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = :id");
$stmt->bindParam(':id', $id);
$id = 1;
$stmt->execute();
上記の例では、:id
というプレースホルダーに $id
の値をバインドしています。プレースホルダーはコロン(:)で始まる任意の名前で指定できます。
- プレースホルダーのデータ型の指定 bindParamメソッドは、自動的にデータ型を推測しますが、明示的に指定することもできます。以下は、データ型を指定する例です。
$stmt = $pdo->prepare("INSERT INTO users (name, age) VALUES (:name, :age)");
$stmt->bindParam(':name', $name, PDO::PARAM_STR);
$stmt->bindParam(':age', $age, PDO::PARAM_INT);
$name = "John Doe";
$age = 25;
$stmt->execute();
上記の例では、:name
のデータ型を文字列(PDO::PARAM_STR
)に、:age
のデータ型を整数(PDO::PARAM_INT
)に明示的に指定しています。
- バインドされた値の変更 bindParamメソッドは、プリペアドステートメントが実行されるまで値を保持します。そのため、バインドされた値を変更することができます。
$stmt = $pdo->prepare("SELECT * FROM users WHERE name = :name");
$stmt->bindParam(':name', $name);
$name = "John Doe";
$stmt->execute();
// もし必要なら、バインドされた値を変更できます
$name = "Jane Smith";
$stmt->execute();
上記の例では、最初に$name
を "John Doe" にバインドしてクエリを実行し、その後で $name
の値を "Jane Smith" に変更して再度実行しています。
これらの例を参考にして、PDO bindParamの使用方法を理解し、安全なデータベース操作を実現してください。