IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Doctrine2 PHP Discussion :

Erreur lors de l'utilisation de count()


Sujet :

Doctrine2 PHP

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Points : 356
    Points
    356
    Par défaut Erreur lors de l'utilisation de count()
    Bonjour,

    Je travaille avec Symfony 4. Lorsque je tente d'accéder à cette fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
        /**
         * @return Int[]
         */
        public function notReadMessages(User $user)
        {
            return $this->createQueryBuilder('m')
                        ->select(count(0))
                        ->andWhere('m.thread IN (:threads)')
                        ->andWhere('m.read IS null')
                        ->setParameter('threads', $user->getThreads())
                        ->getQuery()
                        ->getResult()
            ;
        }
    , j'obtiens l'erreur suivante :

    Warning: count(): Parameter must be an array or an object that implements Countable
    .

    Sur Google, j'ai lu pas mal de messages traitant de ce sujet, mais je ne parviens pas à trouver la solution.

    Quelqu'un aurait une idée?

    Merci d'avance pour votre aide.

  2. #2
    Membre habitué
    Profil pro
    Développeur Web
    Inscrit en
    Novembre 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2010
    Messages : 31
    Points : 152
    Points
    152
    Par défaut
    Je ne comprend pas bien pourquoi tu met un "count(0)" dans le select.

    Mais sinon maintenant (depuis PHP7.X), tu peux faire un count que sur un objet "Countable", typiquement les tableaux ou iterator en gros.

    La solution serait de ne pas mettre ce count(0) dans un select() de doctrine, ce qui ne veut, à ma connaissance, rien dire

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Points : 356
    Points
    356
    Par défaut
    Merci beaucoup pour ton intérêt.

    Je cherche à retourner le nombre de messages non lus par thread. Donc, pour ne pas ramener des objets 'mails' mais bien uniquement le nombre de mails non lus, je fais un select count() des mails dont l'attribut read est à null. Voilà pourquoi je fais le
    .

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Points : 356
    Points
    356
    Par défaut
    J'ai résolu mon problème en faisant comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ->select('COUNT(m.id) AS number')

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur lors de l'utilisation de TableSorter.java
    Par Frac10 dans le forum AWT/Swing
    Réponses: 47
    Dernier message: 20/11/2006, 12h06
  2. Erreur lors de l'utilisation de session_start();
    Par nane1474 dans le forum Langage
    Réponses: 8
    Dernier message: 30/06/2006, 12h06
  3. Erreur lors de l' utilisation des objets ADO
    Par aityahia dans le forum Bases de données
    Réponses: 10
    Dernier message: 24/03/2006, 13h46
  4. Eviter les erreurs lors de l'utilisation des compo Tsocket
    Par Coussati dans le forum Composants VCL
    Réponses: 5
    Dernier message: 01/02/2006, 19h14
  5. Erreur lors de l'utilisation de strlwr ?!
    Par MonsieurAk dans le forum C++
    Réponses: 4
    Dernier message: 05/12/2005, 10h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo