Copyright 1997-2021 the PHP Documentation Group.
mysqli_result::$num_rows
mysqli_num_rows
Gets the number of rows in a result
Description
Object oriented style
int mysqli_result->num_rows ;
Procedural style
int mysqli_num_rows(mysqli_result result);
Returns the number of rows in the result set.
The behaviour of
mysqli_num_rows
depends on whether buffered or unbuffered result sets are being
used. For unbuffered result sets,
mysqli_num_rows
will not return the correct number of rows until all the rows in
the result have been retrieved.
Parameters
-
result
Procedural style only: A result set identifier returned by
mysqli_query
,mysqli_store_result
ormysqli_use_result
.
Return Values
Returns number of rows in the result set.
If the number of rows is greater than
PHP_INT_MAX
, the number will be returned
as a string.
Examples
Example 3.126 Object oriented style
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
if ($result = $mysqli->query("SELECT Code, Name FROM Country ORDER BY Name")) {
/* determine number of rows result set */
$row_cnt = $result->num_rows;
printf("Result set has %d rows.\n", $row_cnt);
/* close result set */
$result->close();
}
/* close connection */
$mysqli->close();
?>
Example 3.127 Procedural style
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
if ($result = mysqli_query($link, "SELECT Code, Name FROM Country ORDER BY Name")) {
/* determine number of rows result set */
$row_cnt = mysqli_num_rows($result);
printf("Result set has %d rows.\n", $row_cnt);
/* close result set */
mysqli_free_result($result);
}
/* close connection */
mysqli_close($link);
?>
The above examples will output:
Result set has 239 rows.
See Also
mysqli_affected_rows
|
mysqli_store_result
|
mysqli_use_result
|
mysqli_query
|