mysqli_num_rows
mysqli_num_rows($result)
Zwraca liczbę wierszy w wyniku zapytania SELECT. Pomaga w decyzji „nic nie znaleziono”. Liczbę wierszy zmienionych przez UPDATE albo DELETE zwraca mysqli_affected_rows().
Parametry
- $result – obiekt mysqli_result.
Przykłady
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$db = mysqli_connect("localhost", "user", "password", "shop");
mysqli_set_charset($db, "utf8mb4");
$r = mysqli_query($db, "SELECT name FROM products WHERE stock = 0");
echo mysqli_num_rows($r); // 1
$r = mysqli_query($db, "SELECT name FROM products WHERE price > 1000");
if (mysqli_num_rows($r) === 0) {
echo "Nic nie znaleziono."; // Nic nie znaleziono.
}
Na co uważać
- Nie wczytuj całej tabeli tylko po to, żeby poznać liczbę –
SELECT COUNT(*)policzy wiersze w bazie i wyśle jedną liczbę. - Z
MYSQLI_USE_RESULT(wiersze pojedynczo) liczba jest znana dopiero po odczytaniu wszystkich wierszy.
Powiązane funkcje:
mysqli_affected_rows()
mysqli_query()
mysqli_fetch_assoc()
count()