Comment puis-je convertir toutes les valeurs d'un tableau en minuscules en PHP?
Quelque chose comme array_change_key_case
?
utiliser array_map()
:
$yourArray = array_map('strtolower', $yourArray);
Au cas où vous auriez besoin d'un tableau imbriqué en minuscules (par Yahya Uddin ):
$yourArray = array_map('nestedLowercase', $yourArray);
function nestedLowercase($value) {
if (is_array($value)) {
return array_map('nestedLowercase', $value);
}
return strtolower($value);
}
mb_strtolower
$yourArray = array_map('mb_strtolower', $yourArray);
Je viens de vérifier et cela a fonctionné pour le cyrilliqueJuste pour être complet: vous pouvez également utiliser
array_walk
:À partir de la documentation PHP:
Ou directement via une
foreach
boucle en utilisant des références :Notez que ces deux méthodes modifient le tableau "en place", alors que
array_map
crée et renvoie une copie du tableau, ce qui peut ne pas être souhaitable dans le cas de très grands tableaux.la source
array_walk_recursive()
. Aussimb_strtolower()
parce que le monde est multilingue.Vous pouvez utiliser array_map (), définir le premier paramètre sur 'strtolower' (y compris les guillemets) et le second paramètre sur $ lower_case_array.
la source
Si vous souhaitez mettre en minuscules toutes les valeurs d'un tableau imbriqué , utilisez le code suivant:
Alors:
retournerais:
la source
array_change_value_case
en continuant
la source
array_map()
est la bonne méthode. Mais, si vous souhaitez convertir des valeurs de tableau spécifiques ou toutes les valeurs de tableau en minuscules une par une, vous pouvez utiliserstrtolower()
.la source
Solution AIO / Recursive / Unicode | UTF-8 | Prise en charge de plusieurs octets!
Exemple:
Production
la source
Vous ne dites pas si votre tableau est multidimensionnel. Si c'est le cas, array_map ne fonctionnera pas seul. Vous avez besoin d'une méthode de rappel. Pour les tableaux multidimensionnels, essayez array_change_key_case .
la source
`$ Color = array ('A' => 'Blue', 'B' => 'Green', 'c' => 'Red');
$ strtolower = array_map ('strtolower', $ Color);
$ strtoupper = array_map ('strtoupper', $ Couleur);
print_r ($ strtolower); print_r ($ strtoupper); `
la source
Vous pouvez également utiliser une combinaison de
array_flip()
etarray_change_key_case()
. Voir ce postla source
array_flip()
si le tableau contient des valeurs dupliquées.