Array déterminer maxvalue et minvalue

Résolu
gabs77 Messages postés 379 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 8 octobre 2008 - 14 juin 2006 à 10:38
gabs77 Messages postés 379 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 8 octobre 2008 - 14 juin 2006 à 15:37
bonjour,
je suis encore débutant dans les arrays en php
et je cherche un script qui me désigne la valeur maximal et la valeur minimal d un array par exemple
array(100,150,12,142,97)
et sa me dit qqch comme ceci
minvalue= 12
et
maxvalue=150

10 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
14 juin 2006 à 10:55
Hello,

bah, tu le tries, déjà. Ensuite, il te suffit d'extraire la 1ère et la dernière entrée du tableau.
3
gabs77 Messages postés 379 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 8 octobre 2008
14 juin 2006 à 10:54
c bon apres etude d un script que g trouver et qq recherche dans les manuels php issus du net
g compris comment on doit faire

$values = array(100,150,12,142,97);

asort($values,SORT_NUMERIC);//trie croissant du tableau
$minvalue = $values[0];

rsort($values,SORT_NUMERIC);//trie decroissant du tableau
$maxvalue = $values[0];
0
gabs77 Messages postés 379 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 8 octobre 2008
14 juin 2006 à 11:57
merci malalam c'est ce ke g fait un pe plus et tu m'aurai répondu juste avant ke je trouve lol
je sais ke sa a l air simple mais lorsque lon ne connait pas tout l'étendue des capacités de PHP on se trotte pas mal la tête
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
14 juin 2006 à 12:06
Par curiosité, fais voir ce bout de code?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gabs77 Messages postés 379 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 8 octobre 2008
14 juin 2006 à 12:31
$values=array('janvier'=>120,'fevrier'=>200);   

$captions=array_keys($values);//prendre les noms associés aux valeurs du tableau
$values=array_values($values);//prendre les valeurs du tableau
//determinons les valurs minimales et maximales d un array
$value_temp = $values;
asort($value_temp, SORT_NUMERIC);//trie de l array en mode croissant
$minvalue = $value_temp[0];
rsort($value_temp, SORT_NUMERIC);//trie de l array en mode décroissant
$maxvalue = $value_temp[0];
0
gabs77 Messages postés 379 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 8 octobre 2008
14 juin 2006 à 12:34
mais juste pour info le value ici est un test parce apres ce  sera géré donc dynamique avec une base de donnée
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
14 juin 2006 à 13:21
$values=array('janvier'=>120,'fevrier'=>200);  
$value_temp = $values;
asort($value_temp, SORT_NUMERIC);
$minvalue = reset ($value_temp);
$maxvalue = end ($value_temp);

faut voir si c'est pas plus rapide que de trier 2 fois ton tableau.
0
gabs77 Messages postés 379 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 8 octobre 2008
14 juin 2006 à 13:26
ok si je comprend bien le reset prendrait la premiere valeur de  l array et le end prendrai la derniere autrement le mini et le maxi etant donné ke c trié par ordre croissant
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
14 juin 2006 à 13:58
en gros, oui.
reset () met le pointeur interne du tableau au début de celu-ci, et renvoie la 1ère valeur.
end () place ce pointeur en fin de tableau, et renvoie la valeur trouvée.
0
gabs77 Messages postés 379 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 8 octobre 2008
14 juin 2006 à 15:37
ok merci sa marche bien en plus c sympa de m avoir aidé ++
0
Rejoignez-nous