Share

Tri des matrices insensible à la casse dans le php

Problème:

$ data = array ("A", "M", "X", "b", "d", "E", "l"); Je dois trier la base de données sur la valeur. Quand j'utilise asort ($ data), a obtenu ce qui suit: [0] => A [5] => E [1] => M [2] => X [3] => b [4] => d [6] => l Dans l'exemple ci-dessus , "b", "d" et "l" commencent par une minuscule mais se terminent après "X" qui a une majuscule.

Comment pouvons-nous le trier là où il ignore si les mots commencent par des majuscules ou des minuscules?

Je m'attendais à cela [0] => A [3] => b [4] => d [5] => E [6] => l [1] => M [2] => X

Solution:

Utilisez natcasesort ($ data); et vous obtiendrez exactement le même résultat.

À noter :

Nous pouvons utiliser cette fonction pour trier nos tableaux à l’aide d’un algorithme "tableau naturel" insensible à la casse. natcasesort () est une version non sensible à la casse de natsort ().

syntaxe:

bool natcasesort ( tableau & $ array);

Retour

Renvoie true en cas de succès et false en cas d'échec. Pour en savoir plus sur l’algorithme "naturel array" ou natcasesort (): https://www.w3schools.com/php/func_array_natcasesort.asp