Wie kann ich alle Werte in einem Array in PHP in Kleinbuchstaben konvertieren?
So etwas wie array_change_key_case
?
Verwenden Sie array_map()
:
$yourArray = array_map('strtolower', $yourArray);
Falls Sie ein verschachteltes Array in Kleinbuchstaben benötigen (von 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);
Ich habe gerade nachgesehen und es hat für CyrillicNur der Vollständigkeit halber: Sie können auch verwenden
array_walk
:Aus PHP-Dokumenten:
Oder direkt über eine
foreach
Schleife mit Referenzen :Beachten Sie, dass diese beiden Methoden das Array "an Ort
array_map
und Stelle" ändern, während eine Kopie des Arrays erstellt und zurückgegeben wird, was bei sehr großen Arrays möglicherweise nicht wünschenswert ist.quelle
array_walk_recursive()
. Auchmb_strtolower()
weil die Welt mehrsprachig ist.Sie können array_map () verwenden, den ersten Parameter auf 'strtolower' (einschließlich der Anführungszeichen) und den zweiten Parameter auf $ lower_case_array setzen.
quelle
Wenn Sie alle Werte in einem verschachtelten Array in Kleinbuchstaben schreiben möchten , verwenden Sie den folgenden Code:
So:
würden zurückkehren:
quelle
array_change_value_case
durch weiter
quelle
array_map()
ist die richtige Methode. Wenn Sie jedoch bestimmte Array-Werte oder alle Array-Werte einzeln in Kleinbuchstaben konvertieren möchten, können Sie diese verwendenstrtolower()
.quelle
AIO Solution / Recursive / Unicode | UTF-8 | Multibyte unterstützt!
Beispiel:
Ausgabe
quelle
Sie sagen nicht, ob Ihr Array mehrdimensional ist. Wenn dies der Fall ist, funktioniert array_map nicht alleine. Sie benötigen eine Rückrufmethode. Versuchen Sie für mehrdimensionale Arrays array_change_key_case .
quelle
$ Color = Array ('A' => 'Blau', 'B' => 'Grün', 'c' => 'Rot');
$ strtolower = array_map ('strtolower', $ Color);
$ strtoupper = array_map ('strtoupper', $ Color);
print_r ($ strtolower); print_r ($ strtoupper); `
quelle
Sie können auch eine Kombination aus
array_flip()
und verwendenarray_change_key_case()
. Siehe diesen Beitragquelle
array_flip()
wenn das Array doppelte Werte enthält.