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

PHP基本チュートリアル

PHP高級チュートリアル

PHP & MySQL

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

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

PHP MySQLi 参考手帳

mysqli_next_result()関数はmysqli_multi_query()に対して次の結果セットを準備します。

定義および用法

mysqli_multi_query()関数が実行された後、次の結果セットを読み取るために準備し、次にmysqli_store_result()またはmysqli_use_result()関数を使用して次の結果セットを読み取ることができます。

文法

mysqli_next_result($con)

パラメータ

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

con(必須)

これはMySQL Serverとの接続を表すオブジェクトです。

返り値

もっと多くの結果セットがある場合、mysqli_next_result()関数はtrueを返します。結果セットがなく、または次のクエリにエラーがある場合、falseを返します。

PHPバージョン

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

オンラインの例

以下の例では、mysqli_next_result()関数の使い方(プロセス指向スタイル)-

<?php
   //接続を確立
   $con = mysqli_connect("localhost", "root", "password", "test");
   //複数のクエリを実行
   $query = "SELECT * FROM players;SELECT * FROM emp;SELECT * FROM tutorials";
   $res = mysqli_multi_query($con, $query);
   $count = 0;
   if ($res) {
      do {
         $count = $count+1;
	     mysqli_use_result($con);
      } while (mysqli_next_result($con));
   }
   print("結果セット数: ".$count);
   mysqli_close($con);
?>

出力結果

結果セット数: 3

オンラインの例

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

<?php
   $con = new mysqli("localhost", "root", "password", "test");
   //マルチクエリ
   $res = $con->multi_query("SELECT * FROM players;SELECT * FROM emp;SELECT * FROM tutorials");
   $count = 0;
   if ($res) {
      do {
         $count = $count+1;
         $con-> use_result();
      } while ($con->next_result());
   }
   print("結果セット数: ".$count);
   //接続を閉じる
   $res = $con -> close();
?>

出力結果

結果セット数: 3

オンラインの例

以下の例は、複数のクエリのすべての結果セットのレコードを検索しています-

//接続を確立
$con = mysqli_connect("localhost", "root", "password", "test");
//複数のクエリを実行
$query = "SELECT * FROM players;SELECT * FROM emp";
$res = mysqli_multi_query($con, $query);
if ($res) {
    do {
        if ($result = mysqli_use_result($con)) {
            while ($row = mysqli_fetch_row($result)) {
                 print("名前: ".$row[0]."\n");
			    print("年齢: ".$row[1]."\n");
            }
            mysqli_free_result($result);
        }
        if (mysqli_more_results($con)) {
            print("\n");
        }
    } while (mysqli_next_result($con));
}
mysqli_close($con);

出力結果

名前: Dhavan
年齢: 33
名前: Rohit
年齢: 28
名前: Kohli
年齢: 25
名前: Raju
年齢: 25
名前: Rahman
年齢: 30
名前: Ramani
年齢: 22

PHP MySQLi 参考手帳