tri sur tableau

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : tri sur tableau

Re: tri sur tableau

par moogli » 09 avr. 2011, 17:39

un bouton vert sur les messages (sauf si t'a posté le 1er en anonyme).

@+

Re: tri sur tableau

par bst » 09 avr. 2011, 17:12

je veux bien mais je dois être aveugle je ne le vois pas :oops:

Re: tri sur tableau

par moogli » 09 avr. 2011, 17:09

de rien ;)

peut tu cliquer sur le bouton résolu du message qui t'a aidé ? :-*

@+

Re: tri sur tableau

par bst » 09 avr. 2011, 16:52

je venais de résoudre le problème en passant par un troisième tableau intermédiaire (utiliser 2 tableau pour l'affichage) mais je vais utiliser ta solution qui est plus simple.
Sinon oui j'avais lu la doc mais j'apprends donc j'ai encore un peu de mal et je faisais pas tout comme il fallait :(

un grand merci a toi en tout cas ;)

Re: tri sur tableau

par moogli » 09 avr. 2011, 16:30

salut,

a tu regardé l'exemple N° 3 de la doc ? http://fr.php.net/manual/fr/function.ar ... ample-4115

par exemple
<?php
$tabtabcn[] = array ('nom' => 'ligne 1', 'nbs' => 1, 'nbm' => 56, 'nbb' => 12);
$tabtabcn[] = array ('nom' => 'ligne 2', 'nbs' => 2, 'nbm' => 45, 'nbb' => 48);
$tabtabcn[] = array ('nom' => 'ligne 3', 'nbs' =>3, 'nbm' => 78, 'nbb' => 8);
$tabtabcn[] = array ('nom' => 'l 4', 'nbs' => 4, 'nbm' => 156, 'nbb' => 0);
$tabtabcn[] = array ('nom' => 'l5', 'nbs' => 5, 'nbm' => 456, 'nbb' => 115);
$tabtabcn[] = array ('nom' => 'L 6', 'nbs' => 6, 'nbm' => 464, 'nbb' => 34);
var_dump($tabtabcn);
echo '<hr />';
foreach ($tabtabcn as $key => $row) {
    $nom[$key] = $row['nom'];
    $nbs[$key] = $row['nbs'];
    $nbm[$key] = $row['nbm'];
    $nbb[$key] = $row['nbb'];
}
array_multisort($nbb,SORT_DESC,$tabtabcn);
var_dump($tabtabcn);
?>
donne
array
0 =>
array
'nom' => string 'l5' (length=2)
'nbs' => int 5
'nbm' => int 456
'nbb' => int 115
1 =>
array
'nom' => string 'ligne 2' (length=7)
'nbs' => int 2
'nbm' => int 45
'nbb' => int 48
2 =>
array
'nom' => string 'L 6' (length=3)
'nbs' => int 6
'nbm' => int 464
'nbb' => int 34
3 =>
array
'nom' => string 'ligne 1' (length=7)
'nbs' => int 1
'nbm' => int 56
'nbb' => int 12
4 =>
array
'nom' => string 'ligne 3' (length=7)
'nbs' => int 3
'nbm' => int 78
'nbb' => int 8
5 =>
array
'nom' => string 'l 4' (length=3)
'nbs' => int 4
'nbm' => int 156
'nbb' => int 0
trié par nbb ;)

@+

tri sur tableau

par bst » 09 avr. 2011, 15:25

Bonjour,

voila mon probleme
j'ai un premier tableau
$tabcn = array ('nom' => $row['nom'], 'nbs' => $row['nbsaisons'], 'nbm' => $totmatchs, 'nbb' => $totbuts);
puis un deuxieme contenant le premier tableau
$tabtabcn[$i] = $tabcn;
Jusque la pas de problème, l'affichage se passe bien, seulement je voudrais trier mon deuxième tableau ($tabtabcn) par nombre de buts (nbb) qui se trouve dans le premier tableau.
J'ai rechercher sur le net et apparemment il faut utiliser la fonction array_multisort mais je n'arrive pas à l'utiliser correctement. Donc pourriez vous m'indiquer svp la marche a suivre ou la méthode pour trier mon tableau.

Merci pour votre aide

cordialement,
bst