Според ръководството има PDOStatement->rowCount
метод; но не трябва да се използва (цитиране) :
За повечето бази данни,
PDOStatement::rowCount()
не връща броя на редовете, засегнати отSELECT
изявление.
Вместо това използвайтеPDO::query()
за издаване наSELECT COUNT(*)
израз със същите предикати като предвидения от васSELECT
изявление, след което използвайтеPDOStatement::fetchColumn()
за да извлечете броя на редовете, които ще бъдат върнати.
Вашето приложение може да извърши правилното действие.
Ако вече имате набор от записи и искате да знаете колко реда има в него, ще трябва да извлечете данните, като използвате един от fetch*
методи; и използвайте count -- както предложихте.