Enligt manualen finns det en PDOStatement->rowCount
metod; men det ska inte användas (citat) :
För de flesta databaser,
PDOStatement::rowCount()
returnerar inte antalet rader som påverkas av enSELECT
påstående.
Använd iställetPDO::query()
för att utfärda enSELECT COUNT(*)
uttalande med samma predikat som din avseddaSELECT
och använd sedanPDOStatement::fetchColumn()
för att hämta antalet rader som kommer att returneras.
Din ansökan kan sedan utföra rätt åtgärd.
Om du redan har en postuppsättning och vill veta hur många rader som finns i den, måste du hämta data med en av fetch*
metoder; och använd count -- som du föreslog.