Tri PHP
Fermé
Wyti
Messages postés
8
Date d'inscription
mardi 19 août 2008
Statut
Membre
Dernière intervention
4 septembre 2008
-
4 sept. 2008 à 15:40
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 4 sept. 2008 à 19:58
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 4 sept. 2008 à 19:58
A voir également:
- Tri PHP
- Tri excel - Guide
- Easy php - Télécharger - Divers Web & Internet
- Logiciel tri photo gratuit - Guide
- En cours de traitement sur le site de tri local ✓ - Forum Consommation & Internet
- Peut on récupérer un colis au centre de tri chronopost - Forum Mobile
3 réponses
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
4 sept. 2008 à 16:01
4 sept. 2008 à 16:01
Salut,
une solution:
@lain
une solution:
<?php $chaine1="blabla"; $chaine2="tototiti"; foreach($chaine as $cle=>$value){ if($value==$chaine1) $pos_chaine1=$cle; if($value==$chaine2) $pos_chaine1=$cle; } if($pos_chaine1 < $pos_chaine2){ //la suite } ?>
@lain
Wyti
Messages postés
8
Date d'inscription
mardi 19 août 2008
Statut
Membre
Dernière intervention
4 septembre 2008
4 sept. 2008 à 17:48
4 sept. 2008 à 17:48
Euh merci mais comme je te l'ai dit mon tableau contient environ une 20aine de chaines, de plus il est impossible de connaitre dans quel ordre elles sont écrites (varie entre 2 générations de la page)
d'ailleurs il ne contiendra pas tout le temps 20 chaines, ce nombre doit pouvoir varier, et ta méthode n'est malheureusement pas assez extensible.
d'ailleurs il ne contiendra pas tout le temps 20 chaines, ce nombre doit pouvoir varier, et ta méthode n'est malheureusement pas assez extensible.
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
4 sept. 2008 à 18:27
4 sept. 2008 à 18:27
Comment ça elle n'est pas extensible ?
si $chaine est l'array qui contient toutes tes chaines
on recherche bien dans tout l'array l'ordre ou les deux sont trouvees
si $chaine est l'array qui contient toutes tes chaines
on recherche bien dans tout l'array l'ordre ou les deux sont trouvees
Wyti
Messages postés
8
Date d'inscription
mardi 19 août 2008
Statut
Membre
Dernière intervention
4 septembre 2008
4 sept. 2008 à 19:44
4 sept. 2008 à 19:44
Oui bien sûr ta boucle est juste le problème c'est ton $value=$chaine2
imaginons que j'aie 260 chaines alors il me faudrait 260 if dans la boucle ce qui est très moyen niveau extensibilité et pire encore je ne dois pas pouvoir prédire la nombre de chaines contenues dans ce tableau donc il me faudrait plus un if qui compare 2 chaines et qui puisse extraire la chaine avant dans l'ordre alphanumérique
imaginons que j'aie 260 chaines alors il me faudrait 260 if dans la boucle ce qui est très moyen niveau extensibilité et pire encore je ne dois pas pouvoir prédire la nombre de chaines contenues dans ce tableau donc il me faudrait plus un if qui compare 2 chaines et qui puisse extraire la chaine avant dans l'ordre alphanumérique
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
4 sept. 2008 à 19:58
4 sept. 2008 à 19:58
Alors tu n'as rien compris au principe:
par la boucle foreach on parcours TOUT l'array $chaine même si il y en a 200
pour chaque passage de la boucle on compare la valeur du pas de l'array qui est $value à la chaine a trouver
foreach($chaine as $cle=>$value)
veut dire pour chaque entree de l'array mettre la cle dans $cle et la valeur dans $value
et ensuite on travaille dessus
@lain
par la boucle foreach on parcours TOUT l'array $chaine même si il y en a 200
pour chaque passage de la boucle on compare la valeur du pas de l'array qui est $value à la chaine a trouver
foreach($chaine as $cle=>$value)
veut dire pour chaque entree de l'array mettre la cle dans $cle et la valeur dans $value
et ensuite on travaille dessus
@lain