$stmt
ist vom Typ PDOStatement
. Diese Klasse hat keine num_rows
Eigentum.
Möglicherweise suchen Sie nach rowCount
stattdessen, aber die Dokumentation dafür besagt:
Das lange und das kurze, wenn es das ist, wenn Sie tatsächlich SELECT
wollen all dieser Daten können Sie zuverlässig bestimmen, wie viele Zeilen zurückgegeben wurden, indem Sie über die Ergebnismenge iterieren (oder rufen Sie einfach fetchAll
und zählen Sie die Elemente im Array). Wenn Sie die Daten nicht benötigen, sondern nur eine Zahl, verwenden Sie SELECT COUNT
stattdessen.
Um also die Zeilen zu zählen, ohne die Abfrage zu ändern:
$result = $stmt->execute();
$rows = $stmt->fetchAll(); // assuming $result == true
$n = count($rows);