آموزش تابع array_map در PHP – آموزش مپ کردن در PHP
مهندس محسن حسن پور
تابع array_map در PHP یکی از توابع قدرتمند و پرکاربرد در این زبان برنامه نویسی است که به شما اجازه میدهد به سادهترین شکل ممکن، یک تابع خاص را روی تمام عناصر یک یا چند آرایه اعمال کنید و نتیجه را در قالب یک آرایه جدید تحویل بگیرید. لطفا مثل همیشه تا انتهای این آموزش با تاتژن همراه باشید.
سینتکس تابع array_map در PHP
array_map(callback, array1, array2, ...);
-
callback: نام تابعی که قرار است روی هر عنصر از آرایه اعمال شود.
-
array1, array2, …: یک یا چند آرایه که میخواهید عملیات روی آنها انجام شود.
چرا از array_map()
استفاده کنیم؟
مهم ترین دلیل برای استفاده از array_map افزایش عملکرد کد های شما و بهینه سازی کد ها است. همانطور که می دانید می توان همین کار ها را با استفاده از حلقه های while و foreach نیز انجام داد. لذا استفاده از array_map در php باعث کاراتر شدن کد شما و همچنین افزایش خوانایی کدتان می شود.
مثال های عملی مپ کردن
<?php $numbers = [1, 2, 3, 4]; $result = array_map(function($n) { return $n * 2; }, $numbers); print_r($result);
در این مثال تمام مقادیر آرایه 2 برابر خواهد شد.
خروجی بصورت مقابل خواهد بود:
Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 )
به مثال زیر توجه کنید:
$names = ["ali", "reza", "sara"]; $result = array_map("strtoupper", $names); print_r($result);
در این مثال تابع strtoupper() رو تمام مقادیر درون آرایه اجرا می شود و خروجی کار چیزی شبیه به زیر خواهد بود:
Array ( [0] => ALI [1] => REZA [2] => SARA )
مثال دیگر:
<?php $a = [1, 2, 3]; $b = [4, 5, 6]; $result = array_map(function($x, $y) { return $x + $y; }, $a, $b); print_r($result);
در این مثال تمام مقادیر 2 آرایه نظیر به نظیر با هم جمع خواهند شد و خروجی کار بصورت مقابل خواهد بود:
Array ( [0] => 5 [1] => 7 [2] => 9 )
در مواقع بهجای استفاده از حلقههای تکراری و استفاده از foreach یا while میتوانیم خیلی حرفهای از
array_map()
استفاده کنیم.
نکات مهم:
-
اگر بیش از یک آرایه بدهید،
array_map()
بهصورت موازی روی عناصر آنها کار میکند. -
اگر طول آرایهها متفاوت باشد، کوتاهترین آرایه، مبنای تکرار خواهد بود.
تابع array_map()
باعث تمیزتر شدن کد، صرفهجویی در زمان، و افزایش خوانایی کد های PHP شما میشود. اگر دنبال یک راه سریع و حرفه ای برای اعمال تغییرات روی آرایهها هستید، این تابع انتخاب عالی شماست! امیدواریم از این آموزش بهره برده باشید. در بخش نظرات برای ما از کاربرد های دیگر این تابع بنویسید.