REcherche aide pour tri multi critère, multi dimensions.

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 : REcherche aide pour tri multi critère, multi dimensions.

par blubsy » 21 juin 2006, 17:33

Super ça marche, j'avais trouver cette fonction mais je n'arrivais pas à l'appliqué et la c'est nickel marci bc pour votre aide...

topic fermé.

par Ripat » 21 juin 2006, 17:11

Tu dois d'abord commencer à mettre tes données dans un tableau à deux dimensions:
$ar[0] = array('num'=>'1255','km'=>'50','prix'=>'54000');
$ar[1] = array('num'=>'1256','km'=>'20','prix'=>'21000');
$ar[2] = array('num'=>'1258','km'=>'90','prix'=>'12000');
$ar[3] = array('num'=>'1258','km'=>'90','prix'=>'11000');
Pour trier, il y a deux possibilités. Avec usort() ou array_multisort()

J'ai une préférence pour la deuxième pour des raisons de lisibilité et de performance.

Pour la question que tu poses:
// construction des clés de tri
foreach($ar as $k=>$v){
  $km[$k] = $v['km'];
  $prix[$k] = $v['prix'];
}
// tri
array_multisort($km, SORT_ASC, $prix, SORT_ASC, $ar);

par mere-teresa » 21 juin 2006, 17:08

Peut-être en utilisant les fonctions natives de PHP sur le tableaux ?
http://fr2.php.net/manual/fr/function.a ... tisort.php

REcherche aide pour tri multi critère, multi dimensions.

par blubsy » 21 juin 2006, 16:33

Bonjour j'ai un petit soucis que je n'arrive pas à résoudre.

J'ai des données que je doit trier avec 2 critères,
je m'expliqué :

$ar0 = array('num'=>'1255','km'=>'50','prix'=>'54000');
$ar1 = array('num'=>'1256','km'=>'20','prix'=>'21000');
$ar2 = array('num'=>'1258','km'=>'90','prix'=>'110000');

Avec ça j'ai besoin de trier pour avoir les tableaux dans l'ordre suivant :
km mini->maxi et prix mini->maxi.

Comment puis je faire ça ?

Merci pour votre aide