sandrinoo Posté 19 Novembre 2014 Posté 19 Novembre 2014 Bonjour à toute la communauté de Webmaster hub,Voilà mon souci, j'ai une fonction de tri décroissant sur les valeurs 42587,36524,18521 : $val = array( array(1, 'produit', 18521), array(2, 'produit', 42587), array(3, 'produit', 36524),);function cmp($a,${ if($a[2]===$b[2]) return 0; return $a[2]<$b[2]? 1:-1;};usort($val,'cmp');print_r($val); Voilà mon souci : J'aurais voulu implémenter ci-dessus un code pour afficher seulement le résultat décroissant jusqu'à une certaine valeur de 37000 (ce qui supprime alors la ligne 42587). Après plusieurs tentatives, cela ne fonctionne pas je ne sais plus comment m'y prendre, avec un if ($a[2] <= '37000'), un unset, autre chose ? Merci à la personne qui lira mon message... sand.
BlackPage Posté 19 Novembre 2014 Posté 19 Novembre 2014 Salut, Tu veux stopper le tri avant ta valeur ou juste ne pas afficher ensuite les valeurs supérieures ou égales à cette valeur ?
sandrinoo Posté 19 Novembre 2014 Auteur Posté 19 Novembre 2014 (modifié) Salut Blackpage, je ne sais pas vraiment, la solution la plus légère... plutôt juste ne pas afficher les valeurs supérieures à cette valeur... Modifié 19 Novembre 2014 par sandrinoo
Message populaire. SStephane Posté 19 Novembre 2014 Message populaire. Posté 19 Novembre 2014 <?php $val = array( array(1, 'produit', 18521), array(2, 'produit', 42587), array(3, 'produit', 36524),); function vireLesValeursGT37000($item){ return $item[2]<37000? $item : false; } $val = array_filter($val, 'vireLesValeursGT37000'); function cmp($a,${ if($a[2]===$b[2]) return 0; return $a[2]<$b[2]? 1:-1; } usort($val,'cmp'); print_r($val); array_filter() Utilise le avant, j'ai pas testé mais je pense que le traitement est moins lourd qu'un sort 1
sandrinoo Posté 19 Novembre 2014 Auteur Posté 19 Novembre 2014 Vous venez de faire une heureuse du côté de Lyon ! Ca fonctionne parfaitement. Je n'ai pas toujours le temps de trouver la solution et quand je tourne en rond depuis plus de 2 heures c'est vrai que je perds courage... Merci beacoup SStephane !
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant