<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Ce code n'a rien à voir avec le contenu de l'article,Il se sépare juste</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">str_repeat</span></span><span>(</span><span><span class="hljs-string">"-"</span></span><span>, </span><span><span class="hljs-number">50</span></span><span>) . </span><span><span class="hljs-string">"\n"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
rsort et asort exister PHP Quelle est la différence de tri?Quels scénarios conviennent à chacun?
exister PHP milieu,Le tri des tableaux est une opération très courante,et rsort et asort sont deux fonctions de tri couramment utilisées。Bien qu'ils soient tous utilisés pour trier les tableaux,但exister排序方式et排序结果的保留上有明显的区别。
</span><span><span class="hljs-number">1</span></span><span>. rsort — Trier dans l'ordre inverse(Trier descendant)
</span><span><span class="hljs-title function_ invoke__">rsort</span></span><span>() 函数将数组按照值进行Trier descendant(De grand à petit),Et réinitialiser l'index du tableau,L'indice sera réaffecté à partir de </span><span><span class="hljs-number">0</span></span><span> Le nombre continu du début。
Exemple de code:
```php
</span><span><span class="hljs-variable">$arr</span></span><span> = [</span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">4</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>];
</span><span><span class="hljs-title function_ invoke__">rsort</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span></span>
Résultat de sortie:
<span><span>Array
(
[</span><span><span class="hljs-meta">0</span></span><span>] => </span><span><span class="hljs-number">4</span></span><span>
[</span><span><span class="hljs-meta">1</span></span><span>] => </span><span><span class="hljs-number">3</span></span><span>
[</span><span><span class="hljs-meta">2</span></span><span>] => </span><span><span class="hljs-number">2</span></span><span>
[</span><span><span class="hljs-meta">3</span></span><span>] => </span><span><span class="hljs-number">1</span></span><span>
)
</span></span>
Notez que la clé d'origine du tableau est rejetée et que le tableau devient un tableau indexé.
Scénarios applicables:
Ne vous souciez que du tri de valeur des éléments du tableau et n'a pas besoin de préserver les noms clés.
Par exemple, organisez la liste des nombres en ordre décroissant pour afficher les classements, les scores, etc.
ASORT - Triez par valeur et gardez les noms de clés associés
La fonction ASORT () est triée en ascendance par des valeurs (de petite à grande), mais gardera les noms clés du tableau inchangé. Autrement dit, la relation de paire de valeurs clés du tableau après tri existe toujours.
Exemple de code:
<span><span><span class="hljs-variable">$arr</span></span><span> = [</span><span><span class="hljs-string">'a'</span></span><span> => </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">'b'</span></span><span> => </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-string">'c'</span></span><span> => </span><span><span class="hljs-number">4</span></span><span>, </span><span><span class="hljs-string">'d'</span></span><span> => </span><span><span class="hljs-number">2</span></span><span>];
</span><span><span class="hljs-title function_ invoke__">asort</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span></span>
Résultat de sortie:
<span><span>Array
(
[</span><span><span class="hljs-meta">b</span></span><span>] => </span><span><span class="hljs-number">1</span></span><span>
[</span><span><span class="hljs-meta">d</span></span><span>] => </span><span><span class="hljs-number">2</span></span><span>
[</span><span><span class="hljs-meta">a</span></span><span>] => </span><span><span class="hljs-number">3</span></span><span>
[</span><span><span class="hljs-meta">c</span></span><span>] => </span><span><span class="hljs-number">4</span></span><span>
)
</span></span>
Scénarios applicables:
Scénarios où les noms de clés doivent être triés par valeur et conservés.
Par exemple, triez par prix du produit, mais l'identifiant d'identification du produit doit être conservé.
Utilisé pour le tri de tableau associatif, afin de faciliter l'accès ultérieur à la valeur correspondante via les clés.
Comparaison du résumé:
fonction | Trier la direction | S'il faut conserver les noms de clés | Scénarios appropriés |
---|---|---|---|
rsort | Ordre descendant | Non réservé | Triez simplement la valeur, le nom de clé n'est pas pertinent, comme la liste de classement |
asorter | Commande ascendante | Noms de clés réservés | Gardez les associations de valeurs clés, telles que le tri des tableaux associatifs |
En outre, PHP a également Arsort pour le tri des commandes décroissantes et la conservation des noms de clés, et le tri est utilisé pour le tri de l'ordre croissant mais ne gardant pas les noms de clés. Selon différents besoins, le choix de la bonne fonction de tri peut rendre le code plus concis et efficace.
En comprenant les différences entre RSORT et ASORT, nous pouvons mieux gérer le tri des tableaux, éviter la confusion des données et améliorer la fiabilité et la lisibilité du programme.
<? Php // La partie finale n'est pas liée au contenu de l'article Echo Str_Repeat ("-", 50). "\ n"; ?> <span></span>