Hàm array_change_key_case có nhiệm vụ chuyển toàn bộ KEY của một Array về dạng chữ HOA (CASE_UPPER
) hoặc dạng chữ thường (măc định là CASE_LOWER
). Hàm này tương thích với các phiên bản PHP 4, PHP 5, PHP 7.
Cú pháp của hàm array_change_key_case trong PHP
array_change_key_case ( array $array [, int $case = CASE_LOWER ] ) : array
Đầu vào của hàm là một mảng, và CASE muốn chuyển đổi va trả về một mảng mới với KEY đã được chuyển sang dạng mới.
Ví dụ sử dụng array_change_key_case trong PHP
<?php $input_array = array("FirSt" => 1, "SecOnd" => 4); print_r(array_change_key_case($input_array, CASE_UPPER)); ?>
Dữ liệu trả về sẽ là
Array ( [FIRST] => 1 [SECOND] => 4 )
Lưu ý: Khi trong mảng có nhiều hơn 1 KEY trùng nhau, thì mảng mới sẽ lấy KEY và VALUE của phần tử sau.
Đồng thời việc chuyển đổi các mảng có key là ký tự UTF-8 cũng sẽ gặp chút khó khăn, để giải quyết vấn đề này chúng ta cần tạo ra một hàm mới dựa trên hàm array_change_key_case
như sau:
function array_change_key_case_unicode($arr, $c = CASE_LOWER) { $c = ($c == CASE_LOWER) ? MB_CASE_LOWER : MB_CASE_UPPER; foreach ($arr as $k => $v) { $ret[mb_convert_case($k, $c, "UTF-8")] = $v; } return $ret; }
Và sau đó là tận hương thành quả.
$arr = array("FirSt" => 1, "yağ" => "Oil", "şekER" => "sugar"); print_r(array_change_key_case($arr, CASE_UPPER)); print_r(array_change_key_case_unicode($arr, CASE_UPPER)); ?> Array ( [FIRST] => 1 [YAğ] => Oil [şEKER] => sugar ) Array ( [FIRST] => 1 [YAĞ] => Oil [ŞEKER] => sugar )
Hi vọng sau bài viết này, bạn có thể nắm rõ và hiểu được cách sử dụng hàm array_change_key_case trong việc chuyển KEY của Array sang viết hoa. Nếu thấy bài viết hay và ý nghĩa, bạn hãy like và chia sẻ để mọi người cùng học hỏi nhé.