mysqli_stmt::$num_rows
mysqli_stmt::num_rows
mysqli_stmt_num_rows
サーバーから取得した結果セットの行数を返す
説明
オブジェクト指向型
intstring$mysqli_stmt->num_rows;
public intstring mysqli_stmt::num_rows()
intstring mysqli_stmt_num_rows(mysqli_stmt $statement
)
全ての行をサーバーから取得していない場合、
この関数は 0
を返します。
パラメータ
-
stmt
-
手続き型のみ:
mysqli_stmt_init が返す mysqli_stmt オブジェクト。
戻り値
バッファリングされた行数を整数値で返します。
アンバッファリングモードでは、
全ての行をサーバーから取得していない場合、
0
を返します。
注意:
行数が PHP_INT_MAX
より大きい場合、
行数の数値は文字列で返されます。
例
例1 オブジェクト指向型
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
$query = "SELECT Name, CountryCode FROM City ORDER BY Name LIMIT 20";
$stmt = $mysqli->prepare($query);
$stmt->execute();
/* 内部バッファに結果を格納します */
$stmt->store_result();
printf("Number of rows: %d.\n", $stmt->num_rows);
例2 手続き型
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
$query = "SELECT Name, CountryCode FROM City ORDER BY Name LIMIT 20";
$stmt = mysqli_prepare($link, $query);
mysqli_stmt_execute($stmt);
/* 内部バッファに結果を格納します */
mysqli_stmt_store_result($stmt);
printf("Number of rows: %d.\n", mysqli_stmt_num_rows($stmt));
参考
- mysqli_stmt_store_result
- mysqli_stmt_affected_rows
- mysqli_prepare