1. Cú pháp hàm array_change_key_case() trong PHP

Hàm array_change_key_case() trong PHP dùng để thay đổi key của một mảng. Hàm này giúp ta chuyển đổi tên của key về dạng chữ in hoa hoặc chữ thường. 

Cú pháp của hàm array_change_key_case() trong PHP : 

array_change_key_case (array $input, $case = 'CASE_LOWER')

Trong đó :

  • $input : là mảng mà ta cần chuyển đổi
  • $case : Kiểu chuyển đổi gồm 2 giá trị là: CASE_LOWERCASE_UPPER
  • CASE_LOWER : chuyển sang chữ thường, tương ứng với số 0
  • CASE_UPPER : chuyển sang chữ hoa, tương ứng với số 1

Sau khi sử dụng hàm array_change_key_case() này ta sẽ thu được một mảng mới có cấu trúc tương đương với mảng ban đầu. Chỉ khác là tên của tất cả phần tử của mảng đó đã chuyển về dạng chữ in hoa hoặc chữ thường. Tuy nhiên nếu ta nhập vào không phải một mảng để chuyển đổi thì giá trị trả về sẽ là Null.

Ví dụ:

<?php
$age=array("thành"=>"20","SơN"=>"21","nam"=>"22");
var_dump(array_change_key_case($age,CASE_UPPER));
?>

Kết quả

array(3) { ["THÀNH"]=> string(2) "20" ["SƠN"]=> string(2) "21" ["NAM"]=> string(2) "22" }

2. Ví dụ về hàm array_change_key_case() trong PHP

Ví dụ 1: Thay đổi key trong mảng thành chữ thường

<?php
$age=array("THànH"=>"20","SƠN"=>"21","NAM"=>"22");
var_dump(array_change_key_case($age,CASE_LOWER));
?>

Kết quả

array(3) { ["thành"]=> string(2) "20" ["sơn"]=> string(2) "21" ["nam"]=> string(2) "22" }

Ví dụ 2: Thay đổi key trong mảng thành chữ in hoa

<?php
$mang = array(
    'name' => 'laptrinhtudau',
    'email' => 'laptrinhtudau@gmail.com',
    'website' => 'laptrinhtudau.com'
);
 
echo '<pre>';
var_dump(array_change_key_case($mang, 1));
?>

Kết quả

array(3) {
  ["NAME"]=>
  string(13) "laptrinhtudau"
  ["EMAIL"]=>
  string(23) "laptrinhtudau@gmail.com"
  ["WEBSITE"]=>
  string(17) "laptrinhtudau.com"
}

Ví dụ 3: Tạo mảng $data2 mống giảng $data1 nhưng tên của các phần tử mảng thì ở dạng chữ thường và mảng $data3 giống mảng $data1 nhưng tên của các phần tử mảng thì ở dạng chữ hoa

<?php 
    $data1 = array(
        "Markup" => "HTML",
        "STYLE" => "CSS",
        "DataBase" => "MySQL"
    );

    echo '- Mảng $data1:<br>';
    print_r($data1);


    $data2 = array_change_key_case($data1,CASE_LOWER);
    echo '<hr>- Mảng $data2:<br>';
    print_r($data2);


    $data3 = array_change_key_case($data1,CASE_UPPER);
    echo '<hr>- Mảng $data3:<br>';
    print_r($data3);
?>

Kết quả

-Mảng $data1:
Array ( [Markup] => HTML [STYLE] => CSS [DataBase] => MySQL )
-Mảng $data2:
Array ( [markup] => HTML [style] => CSS [database] => MySQL )
-Mảng $data3:
Array ( [MARKUP] => HTML [STYLE] => CSS [DATABASE] => MySQL )

Chú ý

Nếu tồn tại hai phần tử trong mảng có tên giống nhau thì giá trị của phần tử trước sẽ bị thay thế bởi giá trị của phẩn tử sau, và phần tử sau sẽ bị xóa. Ví dụ như tên của phần tử là “PHP”“Php” thì nó vẫn sẽ bị coi là giống nhau. Ta có ví dụ sau:

<?php 

    $data = array(
        "One" => "PHP",
        "Two" => "HTML",
        "Three" => "python",
        "ONE" => "Java",
    );
    echo "<pre>";
    print_r($data);
    echo "<pre>";
    print_r(array_change_key_case($data,CASE_LOWER));

?>

Kết quả

Array
(
    [One] => PHP
    [Two] => HTML
    [Three] => python
    [ONE] => Java
)
Array
(
    [one] => Java
    [two] => HTML
    [three] => python
)