En utilisant distinct :
public function countFollowers($user_id)
{
$select = $this->select()
->distinct()
->where('user_id = ?', $user_id);
$rowset = $this->fetchAll($select);
$rowCount = count($rowset);
return $rowCount;
}
EDIT :Après l'édition en question pour obtenir le nombre d'abonnés d'un utilisateur . Vous devez en fait utiliser group NON distinct. J'ai testé la requête suivante pour récupérer les données à compter(),
Je n'ai pas testé le code, mais quelque chose comme ça devrait fonctionner :
public function countFollowers($user_id)
{
$select = $this->select()
->where('user_id = ?', $user_id)
->group(array('user_id', 'follower_id'));
$rowset = $this->fetchAll($select);
$rowCount = count($rowset);
return $rowCount;
}