English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
mysqli_stmt_bind_param()関数は変数をプリペアードステートメントにバインドします。
mysqli_stmt_bind_param()この関数は変数を準備されたクエリのパラメータにバインドします。
mysqli_stmt_bind_param($stmt, $types, $var1, $var2...);
番号 | パラメータおよび説明 |
---|---|
1 | stmt(必須) これは準備されたクエリのオブジェクトを表します。 |
2 | types(必須) は変数の型を指定するための単一文字の文字列で、以下の通りです:
|
3 | var(必須) 変数の値をカンマ区切りで指定します。 |
PHP mysqli_stmt_bind_param()関数は布尔値を返し、成功時はtrue、失敗時はfalse。
この関数は最初にPHPバージョン5導入され、すべての上位バージョンで使用できます。
以下の例では、mysqli_stmt_bind_param()関数の使用法(手続き型スタイル)-
<?php //接続の確立 $con = new mysqli("localhost", "root", "password", "mydb"); //テーブルの作成 $con -> クエリ("CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))"); print("テーブルを作成します.....\n"); //プレースメントステートメントを使用して値を挿入します $stmt = $con -> prepare( "INSERT INTO myplayers values(?, ?, ?, ?, ?)"); //値をパラメータタグにバインドします $stmt -> bind_param("issss", $id, $fname, $lname, $pob, $country); $id = 1; $fname = 'Shikhar'; $lname = 'Dhawan'; $pob = 'Delhi'; $country = 'India'; //文を実行します $stmt->execute(); //文を終了します $stmt->close(); //接続を閉じます $con->close(); ?>
出力結果
テーブルを作成します.....
オブジェクト指向スタイルでは、この関数の構文は以下の通りです$stmt-> close();。以下は、オブジェクト指向スタイルでのこの関数の例です;
<?php //接続の確立 $con = new mysqli("localhost", "root", "password", "mydb"); //テーブルの作成 $con -> クエリ("CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))"); print("テーブルを作成します.....\n"); //プレースメントステートメントを使用して値を挿入します $stmt = $con -> prepare( "INSERT INTO myplayers values(?, ?, ?, ?, ?)"); //値をパラメータタグにバインドします $stmt -> bind_param("issss", $id, $fname, $lname, $pob, $country); $id = 1; $fname = 'Shikhar'; $lname = 'Dhawan'; $pob = 'Delhi'; $country = 'India'; //文を実行します $stmt->execute(); //文を終了します $stmt->close(); //接続を閉じます $con->close(); ?>
出力結果
テーブルを作成します.....
この関数の別の例は以下の通りです-
<?php $con = @mysqli_connect("localhost", "root", "password", "mydb"); mysqli_query($con, "CREATE TABLE Test(Name VARCHAR(255), AGE INT)"); print("テーブルを作成します.....\n"); mysqli_query($con, "insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)"); print("レコードを挿入中.....\n"); $stmt = mysqli_prepare($con, "DELETE FROM test where Age<?"); mysqli_stmt_bind_param($stmt, "i", $num); $num = 28; //文を実行します mysqli_stmt_execute($stmt); //文を終了します mysqli_stmt_close($stmt); //接続を閉じます mysqli_close($con); ?>
出力結果
テーブルを作成します.....