English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP基本教程

PHP上級教程

PHP & MySQL

PHPリファレンスマニュアル

PHP mysqli_stmt_get_result() 関数の使用法および例

PHP MySQLi 参考手帳

mysqli_stmt_get_result()関数は、準備されたステートメントから結果セットを取得します。

定義および使用法

このmysqli_stmt_get_result()この関数は、指定されたステートメントから結果セット(あれば)を検索し、それを返します。

この関数を使用して接続を閉じることができません。持続可能な接続

文法

mysqli_stmt_get_result($stmt);

パラメータ

序号パラメータおよび説明
1

con(必須)

これは準備されたステートメントのオブジェクトを表します。

返り値

SELECTを実行している場合で成功した場合、PHP mysqli_stmt_get_result()関数は結果セットを返します。他の場合、この関数はFALSE

PHPバージョン

この関数は最初にPHPバージョン5で導入され、すべてのより高いバージョンで使用できます。

オンラインサンプル

以下の例では、mysqli_stmt_get_result()関数の使用法(手続き型スタイル)-

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   mysqli_query($con, "CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))");
   print("テーブルの作成.....\n");
   mysqli_query($con, "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India')");
   mysqli_query($con, "INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'CapeTown', 'SouthAfrica')");
   print("レコードを挿入.....\n");
   //検索テーブルの内容
   $stmt = mysqli_prepare($con, "SELECT * FROM myplayers");
   //ステートメントを実行
   mysqli_stmt_execute($stmt);
   //結果を取得
   $res = mysqli_stmt_get_result($stmt);
   while ($row = mysqli_fetch_array($res, MYSQLI_NUM)){
      foreach($row as $r){
         print("$r ");
      }
      print("\n");
   }		
   //ステートメントを終了
   mysqli_stmt_close($stmt);
   //接続を閉じる
   mysqli_close($con);
?>

結果の出力

テーブルの作成.....
レコードを挿入.....
1 Sikhar Dhawan Delhi India
2 Jonathan Trott CapeTown SouthAfrica

オンラインサンプル

オブジェクト指向スタイルでは、この関数の構文は以下の通りです$stmt->get_result();。以下はこの関数のオブジェクト指向スタイルの例です;

<?php
   //接続を確立
   $con = new mysqli("localhost", "root", "password", "mydb");
   $con -> query("CREATE TABLE Test(Name VARCHAR(255), AGE INT)");
   $con -> query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)");
   print("テーブルの作成.....\n");
   $stmt = $con -> prepare( "SELECT * FROM Test WHERE Name in(?, ?)");
   $stmt -> bind_param("ss", $name1, $name2);
   $name1 = 'Raju';
   $name2 = 'Rahman';
   print("レコードを挿入.....\n");
   //ステートメントを実行
   $stmt->execute();
   //結果を取得
   $res = $stmt->get_result();
   print_r($res);
   //ステートメントを終了
   $stmt->close();
   //接続を閉じる
   $con->close();
?>

結果の出力

テーブルの作成.....
レコードを挿入.....
mysqli_result オブジェクト
(
    [current_field] => 0
    [field_count] => 2
    [lengths] =>
    [num_rows] => 6
    [type] => 0
)

PHP MySQLi 参考手帳