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 :

comparer 2 array oui / non


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 56
    Par défaut comparer 2 array oui / non
    bonjour

    j'ai par exemple 2 array
    1,2,3,4,5,6,7,8
    et
    2,5,6,8

    je veux les comparer et avoir pour résultat
    1 non
    2 oui
    3 non
    4 non
    5 oui
    6 oui
    7 non
    8 oui

    oui si je retrouve dans les 2 tableaux et non en valeur par defaut si je trouve pas

    quelle est la meilleure méthode sachant qu'il n'y aura que 10 éléments maxi ?

    merci

  2. #2
    Membre Expert
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Par défaut
    salut,

    array_diff ?

  3. #3
    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
    Par défaut
    Tiens on avait eu cette question il y a quelques temps et malheureusement array_diff() fait la différence d'un tableau sur l'autre et non pas la différence des deux.

    Il faut traiter les deux sens.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 56
    Par défaut
    mais dans une boucle c'est pas possible ? je veux affecter des valeur true et false dans une boucle

    un truc du genre


    for ($i = 1; $i <= 10; $i++) {
    if ( $i == $i_autreArray)
    {... true}
    else{.... false}
    }

  5. #5
    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
    Par défaut
    Tu peux effectivement parcourir ton tableau et utiliser in_array() ; mais comme je le disais il faut le faire du premier tableau sur le deuxieme puis du deuxieme vers le premier.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 56
    Par défaut
    j'y arrive pas
    j'ai essayé plus simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    	$checktrueList = '1,5,6,8';	
    		for ($i = 1; $i <= 10; $i++) {
    			$pos = false;
    			$nb = (string)$i;
    			$pos = strpos($checktrueList, $nb);
    			if ($pos === true) {
    				$checkboxList .= 'true';
    			}
    			else {
    				$checkboxList .= 'false';
    			}
    		}
    ça ne marche pas du tout , c'est toujours à false

  7. #7
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Tiens on avait eu cette question il y a quelques temps et malheureusement array_diff() fait la différence d'un tableau sur l'autre et non pas la différence des deux.

    Il faut traiter les deux sens.
    Exact je m'en souviens. Sinon dans le cas présent, tu peux faire ceci :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    $tab1 = array(2, 4, 6, 9, 15);
    $tab2 = array(2, 7, 9, 10, 11);
    $result = array();
     
    foreach($tab1 as $valeur)
    	$result[$valeur] = 'non';
     
    foreach($tab2 as $valeur)
    	(isset($result[$valeur])) ? $result[$valeur] = 'oui' : $result[$valeur] = 'non';
     
    ksort($result);

Discussions similaires

  1. Détection Javascript activé OUI/NON
    Par Lux interior dans le forum XMLRAD
    Réponses: 3
    Dernier message: 01/10/2009, 13h10
  2. Oui/Non (case à cochée) comme critère
    Par ivan7 dans le forum Access
    Réponses: 1
    Dernier message: 06/02/2006, 23h57
  3. Type Oui/Non
    Par seb008 dans le forum Access
    Réponses: 2
    Dernier message: 09/12/2005, 23h38
  4. Champ de type oui/non
    Par dl_jarod dans le forum ASP
    Réponses: 4
    Dernier message: 13/10/2005, 16h03
  5. [access][sql] commen inserer un champ du type oui/non
    Par cmoa59 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 28/04/2005, 11h05

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