Исправление алгоритма подсчёта строк в таблице базы данных


Исходный код

$users_count = count($this->db->exe('select * from px_users'));

Что не так в исходном коде

Тут снова ставший уже классическим косяк с подсчётом количества строк в результатах запроса.

Через пэхэпэшный count() можно подсчитывать строки, если они уже полностью загружены в память для дальнейшего использования. Если строки в памяти не нужны, а нужно только их количество — следует использовать эскуэльный count().

Подобный недостаток уже можно отнести к категории багов — настолько он серьёзен.

Вариант исправления исходного кода

$users_count = $this->db->select('count(*)')->from('px_users')->get();