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

Langage PHP Discussion :

array : vérifier que toutes les valeurs sont identiques


Sujet :

Langage PHP

  1. #1
    Invité
    Invité(e)
    Par défaut array : vérifier que toutes les valeurs sont identiques
    Bonjour,

    je dois avoir la tête à l'envers aujourd'hui...

    J'ai un array, dont les valeurs peuvent être true ou false.

    Je souhaite vérifier que TOUTES sont à true (par exemple).

    Pour l'instant, j'ai trouvé :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $quota_array = array(true, true, false, true); // mon array
    // -----------------
    $quota_array	= array_unique($quota_array);	// supprime les doublons
    if( count($quota_array)==1 && $quota_array[0]==true ) 		// true -> QUOTA ATTEINT pour TOUS
    {
    	echo 'Tous les quotas sont atteints';
    }
    Question : on peut sûrement trouver mieux, non ?

    Merci.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    En faisant le produit peut être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (array_product($quota_array)) {

  3. #3
    Invité
    Invité(e)
    Par défaut
    Pas bête (je ne connaissais pas)

    en remplaçant simplement true par 1 et false par 0.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    En faisant le produit sur TRUE et FALSE ça marche quand même.

  5. #5
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Salut jreaux62,

    pour tester tes valeurs de manière typée sans avoir à les remplacer tu disposes de la fonction in_array() avec le 3ème argument.

    Donc en gros pour savoir si tu n'as que des true, il ne faut surtout pas trouver un false et inversement pour l'inverse ;-)
    Ce qui nous donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $plein_de_true  = ! in_array(false, $quota_array, true);
    $plein_de_false = ! in_array(true, $quota_array, true);

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bien vu.
    Simple. et efficace.

    Comme d'habitude

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 03/01/2014, 23h16
  2. [PDO] Probleme bindparam toutes les valeurs sont identiques
    Par albedo0 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 02/01/2011, 13h16
  3. [E-03] Vérifier que tous les caractères sont des chiffres
    Par neiluj26 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 04/03/2009, 11h48
  4. Vérifier que toutes les balises soient bien fermées dans le bon ordre
    Par piotrr dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 19/02/2009, 10h32
  5. Réponses: 2
    Dernier message: 31/08/2006, 11h20

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