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 :

[Tableaux] Parcourir un tableau


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 14
    Points : 12
    Points
    12
    Par défaut [Tableaux] Parcourir un tableau
    Bonjour, j'ai commis ce petit bout de code qui ne me retourne pas exactement ce que je veux.
    Postulat:
    1 - j'ai un tableau avec des clés et valeurs
    2 - j'ai un fonction qui récupère : le nom de mon tableau, une série de valeurs séparées soit par virgule(,), deux points(:), pipe(|), une troisième valeur.
    3 - en fontion du séparateur du second argument, j'explode pour en extraire une valeur unique
    4 - ja parcours le tableau et compare ces valeurs uniques avec les valeurs du tableau
    5 - si le comparatif me sort qu'il a trouvé une équivalence, alors je récupère la clé qui correspond à cette valeur.
    6 - je prends la clé ainsi identifiée pour trouver une image dans un répertoire avec la fonction glob (car je me suis arranger pour que chaque image de ce répertoire puisse comporter dans son nom des caractères qui correspondent à une clé de mon fameux tableau.

    SCRIPT
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
     
    define("FAKE_DIR","chemin/images/");
    $T_array = array("key1"=>"va1|va2|va3|va4|va5|||","key2"=>"vb1|vb2|vb3|vb4||||");
     
    function crawler($v,$entry,$nt){
     
    		$entry 	= trim($entry);
     
    		if		(	ereg("\|",$entry)	)	$entry		= explode("\|",$entry);
     
    		elseif	(	ereg(",",$entry)	)	$entry		= explode(",",$entry);
     
    		elseif	(	ereg(":",$entry)	)	$entry		= explode(":",$entry);
     
    		$max	= count($entry);
     
    			foreach($v as $key=>$values){
     
    				list($categorie[0],$categorie[1],$categorie[2],$categorie[3],$categorie[4],$categorie[5])=split("\|",$values);
     
    				for($i=0;$i<7;$i++){
     
    					if(!empty($categorie[$i])){
     
    						for($j=0;$j<$max;$j++){
     
    							if(is_numeric($entry[$j])) $entry[$j] = equive_CAT_TXT($entry[$j],'');
     
    							if($categorie[$i]==trim($entry[$j])){
     
    								$sortie	= $key; break;
     
    							}
     
    						}
     
    					}
     
    				}
     
    			}
     
    		$sortie		=	(isset($sortie))	?	$sortie: "divers";
     
    		if(ereg('QQ',$nt))	$sortie	=	'QQ';
     
    		$files		=	glob(FAKE_DIR.$sortie."*.jpg");
     
    		/*-----------------------------------------------------------------
     
    			POUR NE PAS AVOIR DE DOUBLONS DANS LES RESULTATS DE RECHERCHE
     
    			ON INSERT LES FICHIERS TROUVES DANS UN TABLEAU
     
    		*/	
     
    		$trouves	=	array();
     
    		$count		=	count($files);
     
    		$rand		=	rand(0,$count-1);
     
    		shuffle($files);
     
    		return $files[$rand];
     
    	}
     
    //exemple d'appel
     
    echo crawler($T_array,"vb4||||||||","");
    Malheureusement si je poste ici ce code, c'est que cela ne fonctionne pas, car je n'ai pas en sortie ce que j'espèrais.

    Quelqu'un peut-il m'aiguiller?

  2. #2
    Membre confirmé Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Points : 547
    Points
    547
    Par défaut
    qu'esperez vous? et qu'avez vous en affichage?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 14
    Points : 12
    Points
    12
    Par défaut
    j'espère avoir en sortie la clé qui correspond à une des valeurs(splittées)

    en gros si dans mon tableau j'ai

    array (cLe1 => valeur=vaL1|vaL2|vaL3,cLe2 =>valeurZ1|valeurZ2|valeurZ3)

    je veux qu'en entrant vaL2, j'ai cLe1 en sortie

Discussions similaires

  1. Réponses: 4
    Dernier message: 18/09/2008, 20h44
  2. Réponses: 4
    Dernier message: 11/02/2008, 18h03
  3. [Tableaux] Parcourir un tableau PHP
    Par patjaff dans le forum Langage
    Réponses: 3
    Dernier message: 27/12/2007, 16h11
  4. [Tableaux] Parcourir un tableau en sens inverse
    Par phoque.r dans le forum Langage
    Réponses: 7
    Dernier message: 13/04/2007, 10h08
  5. [Tableaux] Parcourir un tableau ?
    Par Kotik dans le forum Langage
    Réponses: 18
    Dernier message: 06/04/2006, 10h01

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