$stmt
е от тип PDOStatement
. Този клас няма num_rows
собственост.
Може би търсите rowCount
вместо това, но документацията за това гласи:
Дългият и късият, ако е това, ако искате всъщност да SELECT
всички тези данни, можете надеждно да определите колко реда са били върнати чрез повторение на набора от резултати (или просто извикайте fetchAll
и пребройте елементите в масива). Ако не се нуждаете от данните, а само от число, използвайте SELECT COUNT
вместо това.
И така, за да преброите редовете, без да променяте заявката:
$result = $stmt->execute();
$rows = $stmt->fetchAll(); // assuming $result == true
$n = count($rows);