Table of Content
The array_change_key_case function in PHP changes all array keys to lowercase or uppercase for consistent data use.
Understand the array_change_key_case Function in PHP
The array_change_key_case function changes the case of keys in an array. It changes every key at once and returns a new array.
The syntax looks like this:
array_change_key_case($array, $case = CASE_LOWER)- $array: the input array with mixed key cases.
- $case: optional constant. Use
CASE_LOWERorCASE_UPPER. - Return: a new array with all keys in the case you set.
Keys in arrays often mix lowercase and uppercase. This breaks uniform access. The function fixes the issue by changing all keys to one style.
Here is a quick example:
$data = ["Name" => "Sara", "AGE" => 25];
print_r(array_change_key_case($data));This example changes all keys to lowercase. You see name and age instead of mixed forms.
The output:
Array
(
[name] => Sara
[age] => 25
)
The function loops over every key and applies the case rule. It does not touch the values. The result is a new array with changed keys.
Lowercase conversion:
$data = ["City" => "Cairo", "COUNTRY" => "Egypt"];
print_r(array_change_key_case($data, CASE_LOWER));This code makes all keys lowercase. The output keys are city and country.
The output:
Array
(
[city] => Cairo
[country] => Egypt
)
Uppercase conversion:
$data = ["City" => "Cairo", "COUNTRY" => "Egypt"];
print_r(array_change_key_case($data, CASE_UPPER));The output:
Array
(
[CITY] => Cairo
[COUNTRY] => Egypt
)
This code makes all keys uppercase. The output keys are CITY and COUNTRY.
The Difference Between strtolower Keys and array_change_key_case
The strtolower function works on strings. It changes every letter in a string to lowercase. You pass one string, and you get a lowercase version of that string.
The array_change_key_case function works on arrays. It changes every key in the array. It does not touch the values.
Here is a table shows key differences:
| Function | Works On | Result |
|---|---|---|
| strtolower | Single string | Lowercase string |
| array_change_key_case | Array keys | Array with changed keys |
Use strtolower when you want one string in lowercase. Use array_change_key_case when you want all keys in an array in the same case.
Examples of the array_change_key_case in PHP
Normalize User Data Keys:
$data = ["UserName" => "Ali", "Email" => "ali@test.com"];
$result = array_change_key_case($data, CASE_LOWER);
print_r($result);This example changes mixed-case user data keys to lowercase. You can avoid a mismatch in later access.
Here is the output:
Array
(
[username] => Ali
[email] => ali@test.com
)
Match API Response Keys:
$response = ["id" => 101, "NaMe" => "Lina", "SCORE" => 89];
$fixed = array_change_key_case($response, CASE_UPPER);
print_r($fixed);This example changes every API response key to uppercase. You match external systems that use uppercase keys. The values stay the same. The result:
Array
(
[ID] => 101
[NAME] => Lina
[SCORE] => 89
)
Combine Arrays:
$a = ["Name" => "Omar", "Age" => 22];
$b = ["NAME" => "Omar", "AGE" => 22];
$a = array_change_key_case($a, CASE_LOWER);
$b = array_change_key_case($b, CASE_LOWER);
print_r(array_merge($a, $b));Here, it converts both arrays to lowercase before merging them and avoids key conflicts from mixed cases.
Here is the output:
Array
(
[name] => Omar
[age] => 22
)
Handle Config Data:
$config = ["Host" => "localhost", "PORT" => 3306, "User" => "root"];
$fixed = array_change_key_case($config, CASE_UPPER);
print_r($fixed);The result:
Array
(
[HOST] => localhost
[PORT] => 3306
[USER] => root
)
This changes configuration keys to uppercase.
Wrapping Up
You learned what array_change_key_case does and how it works.
Here is a quick recap:
- It changes all array keys to lowercase or uppercase.
- It works only on keys and not on values.
- It avoids errors with mixed-case keys.
FAQs
What does php array_change_key_case do?
array_change_key_case() function changes all array keys to lowercase or uppercase.
- Syntax:
array_change_key_case(array, case) - Case: Use
CASE_LOWERorCASE_UPPER
How to convert array keys to lowercase in PHP?
array_change_key_case() with CASE_LOWER.
Example:
$array = ["ID" => 101, "Name" => "John"];
$result = array_change_key_case($array, CASE_LOWER);
print_r($result);
Output:
Array ( [id] => 101 [name] => John )
How to convert array keys to uppercase in PHP?
array_change_key_case() with CASE_UPPER.
Example:
$array = ["id" => 101, "name" => "John"];
$result = array_change_key_case($array, CASE_UPPER);
print_r($result);
Output:
Array ( [ID] => 101 [NAME] => John )
What is the difference between strtolower and array_change_key_case?
- strtolower:
strtolower("HELLO")→ "hello" - array_change_key_case: converts every key in the array
Similar Reads
You may need to cut the last character from a string if it shows by mistake in PHP. That may…
Developers needed a way to check the length of a string, so the strlen function was introduced to handle this…
Before PHP 5.2, there was no built-in filter extension in PHP. You had to manually handle and sanitize input. PHP…
Perhaps you're new to PHP or sharpening your skills and looking to understand how numbers work within this language under…
Variables in PHP are general elements used for data storage and other manipulations. Global variables belong to a particular category…
Updating documents in MongoDB with PHP involves using the updateOne or updateMany methods from the MongoDB PHP library. These methods allow for precise updates,…
PHP has great tools to handle external files such as opening, writing, deleting and more else, in this tutorial we…
Connecting PHP to MongoDB allows you to integrate database functionalities into your web applications. MongoDB is a NoSQL database that…
The NOT operator in PHP (!) provides the reverse of whatever truth value is given by a certain expression. It’s…
The increment and decrement are operators that can be used to increase or decrease the variable values which have a…