تابع array_change_key_case برای تبدیل تمام اندیسها و یا کلیدهای آرایه به حروف بزرگ و یا کوچک مورد استفاده قرار میگیرد. مثال زیر را با هم بررسی میکنیم:
$person = array("Name"=>"Hasan","LASTname"=>"Moradi");
print_r(array_change_key_case($person, CASE_LOWER));
خروجی مثال فوق به شکل زیر است:
Array ( [name] => Hasan [lastname] => Moradi )
همانطور که میبینید تنها کلید آرایه به حروف کوچک تبدیل شده است.
در مثال زیر تمام کلیدهای آرایه فوق را به حروف بزرگ تبدیل میکنیم:
$person = array("Name"=>"Hasan","LASTname"=>"Moradi");
print_r(array_change_key_case($person, CASE_UPPER));
خروجی این مثال به شکل زیر است:
Array ( [NAME] => Hasan [LASTNAME] => Moradi )
در تابع فوق CASE_UPPER و یا CASE_LOWER مقادیر اختیاری و به ترتیب برای بزرگ کردن و کوچک کردن حروف کلید مورد استفاده قرار میگیرند. اگر یکی از این دو را استفاده نکنیم به صورت پیشفرض کلیدها به صورت حروف کوچک در میآیند:
$person = array("Name"=>"Hasan","LASTname"=>"Moradi");
print_r(array_change_key_case($person));
خروجی عبارت است از:
Array ( [name] => Hasan [lastname] => Moradi )
اگر خروجی تابع array_change_key_case مقدار FALSE باشد یعنی متغیری به این تابع داده اید که نا معتبر است.
نکتهای که در تبدیل کلیدهای یک آرایه بسیار مهم است این است که یک آرایه به حروف کوچک و بزرگ حساس است. خروجی مثال زیر را ببینید:
$person = array("Name"=>"Hasan","NamE"=>"Ali");
print_r($person);
خروجی مثال فوق یک آرایه با دو آیتم است. اگر برای متغیر فوق از array_change_key_case استفاده کنیم چه اتفاقی میافتد؟
$person = array("Name"=>"Hasan","NamE"=>"Ali");
print_r(array_change_key_case($person));
خروجی به شکل زیر است:
Array ( [name] => Ali )
همانطور که میبینید آخرین کلید فقط نمایان شد، چون کلیدهای قبلی بدلیل تکراری بودن حذف شدند.
اگر سوالی در مورد این تابع دارید در کادر نظرات زیر با ما در ارتباط باشید.