Trier des tableaux en PHP
Trier des tableaux en PHP
-
Objectifs
- Être capable de trier les tableaux en PHP
-
Présentation
- Le tri facilite et optimise de nombreuses tâches nécessitant l’accès ou l’obtention d’un ensemble de données spécifique. Dans ce tutoriel, nous allons apprendre à utiliser les fonctions PHP intégrées pour trier différents types de tableaux.
-
Trier un tableau par valeur
-
Utilisation de la fonction sort()
- Syntaxe:
sort ( $array [, $mode] );
- Le paramètre optionnel $mode
SORT_REGULAR
: effectue une comparaison classiqueSORT_NUMERIC
: effectue une comparaison numériqueSORT_STRING
: effectue une comparaison de chaînes-
Utilisation de la fonction rsort()
- La fonction
rsort
effectue un tri inverse : - Si vous souhaitez trier les valeurs de votre tableau de haut en bas au lieu de bas en haut, vous pouvez le faire à l’aide de la rsort()fonction. Il accepte tous les mêmes paramètres que sort()mais trie les valeurs dans l’ordre inverse.
- La fonction
rsort
ne gère aucune association clé-valeur, il n’est donc pas un bon choix pour trier les tableaux associatifs. -
Trier un tableau associatif
-
Association par valeur
- PHP dispose de deux fonctions différentes pour trier les tableaux associatifs qui maintiennent l’association valeur.
- Ces deux fonctions sont
asort()
etarsort()
. L’extrait de code suivant trie le même tableau $notes_apprenants mais utilise asort() pour le faire. -
Association par clé
- Le tri d’un tableau en fonction de ses clés est généralement utile lorsqu’il s’agit de tableaux associatifs.
<!DOCTYPE html >
<html lang="fr">
<head>
<title>Les structures de contrôle en PHP</title>
<meta ="UTF-8">
</head>
<body>
<?php
$notes_apprenants = ["Mohamed" => "16", "Ahmed" => "14", "Rafika" => "13", "Aicha" => "15", "Samir" => "13"
, "Samar" => "13", "Rafik" => "10", "Samiha" => "09", "Fourat" => "07", "Sami" => "07", "Noura" => "14"];
echo "Avant le triage — <br>";
foreach($notes_apprenants as $apprenant=>$note) {
echo $apprenant." à eu ".$note."<br>";
}
echo "Après le triage (de plus petit au plus grand )— <br>";
asort($notes_apprenants);
foreach($notes_apprenants as $apprenant=>$note) {
echo $apprenant." à eu ".$note."<br>";
}
echo "Après le triage (de plus grand au plus petit)— <br>";
arsort($notes_apprenants);
foreach($notes_apprenants as $apprenant=>$note) {
echo $apprenant." à eu ".$note."<br>";
}
?>
</body>
</html>
<!DOCTYPE html >
<html lang="fr">
<head>
<title>Les structures de contrôle en PHP</title>
<meta ="UTF-8">
</head>
<body>
<?php
$notes_apprenants = ["Mohamed" => "16", "Ahmed" => "14", "Rafika" => "13", "Aicha" => "15", "Samir" => "13"
, "Samar" => "13", "Rafik" => "10", "Samiha" => "09", "Fourat" => "07", "Sami" => "07", "Noura" => "14"];
echo "Avant le triage — <br>";
foreach($notes_apprenants as $apprenant=>$note) {
echo $apprenant." à eu ".$note."<br>";
}
echo "Après le triage (de plus petit au plus grand )— <br>";
ksort($notes_apprenants);
foreach($notes_apprenants as $apprenant=>$note) {
echo $apprenant." à eu ".$note."<br>";
}
echo "Après le triage (de plus grand au plus petit)— <br>";
krsort($notes_apprenants);
foreach($notes_apprenants as $apprenant=>$note) {
echo $apprenant." à eu ".$note."<br>";
}
?>
</body>
</html>
- Références:
- https://www.php.net
- Livre PHP7 Cours et exercices Jean Engels 2e édition
- Technologies de l’Information et de la Communication 4 année secondaire