$stmt
thuộc loại PDOStatement
. Lớp đó không có num_rows
tài sản.
Bạn có thể đang tìm kiếm rowCount
thay vào đó, nhưng tài liệu cho điều đó cho biết:
Dài và ngắn nếu là như vậy, nếu bạn thực sự muốn SELECT
tất cả dữ liệu đó, bạn có thể xác định một cách đáng tin cậy có bao nhiêu hàng được trả về bằng cách lặp lại tập hợp kết quả (hoặc chỉ cần gọi fetchAll
và đếm các mục trong mảng). Nếu bạn không cần dữ liệu mà chỉ cần một số, hãy sử dụng SELECT COUNT
thay vào đó.
Vì vậy, để đếm các hàng mà không thay đổi truy vấn:
$result = $stmt->execute();
$rows = $stmt->fetchAll(); // assuming $result == true
$n = count($rows);