Tri d'un tableau

Résolu
Signaler
Messages postés
28
Date d'inscription
dimanche 3 décembre 2006
Statut
Membre
Dernière intervention
10 novembre 2007
-
Messages postés
28
Date d'inscription
dimanche 3 décembre 2006
Statut
Membre
Dernière intervention
10 novembre 2007
-
Bonjour,
Alors voila, j'essaie de trier un tableau qui contient des valeurs numériques (exemple : 300,9,500,...)
En faite, le tri se passe bien mais il considère que 9 est plus grand que 500.. Il me semble qu'il ne regarde que le premier chiffre d'un nombre...
Voici le code qui me donne ce  résultat :

$ok=0;
 while($ok==0){
  $ok=1;
  for ($i=1;$i<=$cpt-1;$i++){
   if ($tableauProvisoire[$i]<$tableauProvisoire[$i+1]){
    $temp=$tableauProvisoire[$i];
    $tableauProvisoire[$i]=$tableauProvisoire[$i+1];
    $tableauProvisoire[$i+1]=$temp;
    $ok=0;
   };
  };
 };

Merci d'avance pour votre précieuse aide...

Julien

2 réponses

Messages postés
2480
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
19
Salut,n

Pourquoi est-ce que tu n'utilises pas les fonctions natives de tri de php ?
http://fr2.php.net/manual/fr/function.sort.php
http://fr2.php.net/manual/fr/function.asort.php
http://fr2.php.net/manual/fr/function.ksort.php

Elles sont sûrement plusieurs fois plus rapides que ta fonction...
Messages postés
28
Date d'inscription
dimanche 3 décembre 2006
Statut
Membre
Dernière intervention
10 novembre 2007

Salut,
Merci de ta réponse Neigedhiver.
Je débute en php et je ne connaissais pas ces fonctions...
Malgré cela, le problème subsistait et en faite, j'ai trouvé mon erreur, c'est qu'au moment de remplir mon tableau, j'avais mis en gras ces valeurs pour l'affichage.... en gros j'avais $tableau[$i]=''.$valeur.''; En enlevant cet attribut ça marche!!