Petit casse tete [Résolu]

Messages postés
115
Date d'inscription
mercredi 27 août 2003
Statut
Membre
Dernière intervention
7 mars 2008
- - Dernière réponse : sbool
Messages postés
115
Date d'inscription
mercredi 27 août 2003
Statut
Membre
Dernière intervention
7 mars 2008
- 12 févr. 2008 à 19:14
Petit casse tete -> Pour moi en tout cas...

Bonjour, je devellope actuellement un petit jeu multijoueur en php, lorsque j'arrive à la fin j'ai

<?php
$score array("Alex"> "12", "Marina" => "18", "Marc" => "12", "Dany" => "13");
arsort($score);
foreach ($score as $key => $val) {
   echo "$key = $val
";
}
?>
qui classe très bien par ordre numérique or, je souhaite juste en plus (juste) ajouter un moyen de determiner celui qui a mis le moins de temps a faire le niveau dans le cas ou les 2 (ou plus ) meilleurs scores soient egaux (j'obtiens déjà les secondes dans des varibles pour trier tout ca)...

J'espère vous avoir clairement exposé mon problème, & merci a vous encore une fois! ;)
Afficher la suite 

4 réponses

Meilleure réponse
Messages postés
10843
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
17
3
Merci
Hello,

<?php
$aScores = array(
    'toto' => 2000,
    'tata' => 2500,
    'titi' => 2000,
    'tutu' => 2500
);

$aTimes = array(
    'toto' => 25,
    'tata' => 30,
    'titi' => 22,
    'tutu' => 32
);

array_multisort($aScores, SORT_ASC, $aTimes, SORT_ASC);

foreach($aScores as $sUser => $iScore) {
    echo $sUser, ' => SCORE : ', $iScore, ' - TEMPS : '.$aTimes[$sUser]."\r\n";
}
?>

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 206 internautes nous ont dit merci ce mois-ci

Commenter la réponse de malalam
Messages postés
12336
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
29
0
Merci
salut

faut faire ton tableau comme ca :

user1 => array(score, time), user2 => ...

et utiliser la fonction de tri qui permet une fonction perso pour determiner l'ordre (cherche sort sur php.net, t'auras a mon avis cette fonction dans les fonctions associees)

/**
* @author coucou747 <coucou747@hotmail.com>
* @see irc://cominweb.uni-irc.net/#programmation
*/
Commenter la réponse de coucou747
Messages postés
115
Date d'inscription
mercredi 27 août 2003
Statut
Membre
Dernière intervention
7 mars 2008
0
Merci
Mmm ca ne fonctionne pas, et pareil avec les multi dimentionel...
En faisant 1 seul tableau c impossible, je pourrais donc en faire deux -> 1 pour les temps et 1 pour les score, attribuer quelques varibles puis les comparer, si les 2 permiers scores sont egaux, ce sera celui qui a ete le plus rapide qui gagne, (mais a ce moment impossible de trier les temps en fonction du score....).
J'y vois un peu plus clair a cette heure mais c toujours pas ca .
Je rebidouille et quand j'y arrive (car j'ai pas le choix) je poste la solution, mais si quelqu'un connais la technnique appropriée, tenez moi informez avant que je sombre dans la folie
Commenter la réponse de sbool
Messages postés
115
Date d'inscription
mercredi 27 août 2003
Statut
Membre
Dernière intervention
7 mars 2008
0
Merci
OMG!!!
Ca tourne nickel  Malalam, a chaques fois tu me depatouille, merci vraiment.
MERCI Merci merci
Commenter la réponse de sbool