PHP PDO - Цифровые строки

PDO, по-видимому, не имеет никаких средств считать количество строк возвращенным из запроса Select (mysqli имеет num_rows переменная).

Есть ли способ сделать это, за исключением использования count($results->fetchAll()) ?

13
задан Ry- 5 April 2014 в 17:07
поделиться

1 ответ

Согласно руководству, существует метод PDOStatement-> rowCount ; но его не следует использовать (цитата) :

Для большинства баз данных PDOStatement :: rowCount () не возвращает количество строк, затронутых оператором SELECT .
Вместо этого используйте PDO :: query () , чтобы выполнить инструкцию SELECT COUNT (*) с теми же предикатами , что и предполагалось SELECT , затем используйте PDOStatement :: fetchColumn () , чтобы получить количество строк, которые будут {{1} } быть возвращенным.
После этого ваше приложение сможет выполнить правильное действие.


Если у вас уже есть набор записей и вы хотите узнать, сколько в нем строк, вам придется получить данные, используя один из методов fetch * ; и используйте count - как вы предложили.

12
ответ дан 2 December 2019 в 00:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: