تست هوش با بازی اعداد شروع شد. از مسابقه جا نمونی 😀

اینجا کلیک کن
بریم برای شروع

توابع array_map و array_filter - آزمون برنامه نویسی پی اچ پی php

تعداد سوال 21
قیمت رایگانــ
زمانسنج ندارد
رده‌سنی همه سنین
وضعیت فعال
نظرات ندارد

توابع کاربردی آرایه ها array_map و array_filter

امروز می خوام درباره دو تا از باحال ترین و پرکاربردترین توابع PHP باهاتون حرف بزنم. این دو تا تابع، یعنی array_map و array_filter، کارمون رو توی مدیریت و پردازش آرایه ها خیلی آسون و جذاب می کنن.

دیگه نیازی نیست برای هر کار ساده ای کلی حلقه و کد بنویسیم. با این دو تا، کدتون خیلی تمیزتر و خواناتر می شه.

توابع array_map و array_filter  - آزمون برنامه نویسی پی اچ پی php


array_map: تغییر شکل اعضای آرایه

فرض کن یه آرایه داری و می خوای روی هر کدوم از اعضاش یه عملیاتی انجام بدی و نتیجه رو توی یه آرایه جدید ذخیره کنی. مثلاً می خوای همه اعداد یه آرایه رو دو برابر کنی. راه قدیمی و سختش این بود که با یه حلقه foreach دونه دونه اعداد رو بگیری، دو برابر کنی و توی یه آرایه جدید بریزی. اما با array_map، این کار یه خط کده!

این تابع دو تا ورودی اصلی می گیره: اولی یه تابع (Callback Function) که می خوای روی هر عضو آرایه اجرا بشه و دومی خود آرایه اس. این تابع Callback می تونه یه تابع معمولی، یه تابع ناشناس (Anonymous Function) یا حتی یه Arrow Function باشه.

مثال: دو برابر کردن اعداد یه آرایه

  • استفاده از Anonymous Function
    $numbers = [1, 2, 3, 4, 5];
    $doubled_numbers = array_map(function($n) {
        return $n * 2;
    }, $numbers);
    print_r($doubled_numbers);
    // خروجی: Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10 )
  • استفاده از Arrow Function (جدیدتر و باحال تر)
    $numbers = [1, 2, 3, 4, 5];
    $doubled_numbers = array_map(fn($n) => $n * 2, $numbers);
    print_r($doubled_numbers);
    // خروجی: Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10 )

یه نکته جالب: می تونی چند تا آرایه رو همزمان به array_map بدی و تابع Callbackت هم به تعداد آرایه ها ورودی بگیره.


array_filter: فیلتر کردن آرایه بر اساس شرط

حالا فرض کن یه آرایه از اعداد داری و می خوای فقط اونایی که زوج هستن رو جدا کنی. اینجاست که array_filter میاد وسط. این تابع هم مثل array_map یه تابع Callback می گیره، اما فرقش اینه که تابع Callback باید یه مقدار بولی (true یا false) برگردونه. اگه true برگردونه، اون عضو توی آرایه نهایی قرار می گیره و اگه false باشه، حذف می شه.

مثال: فیلتر کردن اعداد زوج از یک آرایه

  1. استفاده از Anonymous Function
    $numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
    $even_numbers = array_filter($numbers, function($n) {
        return $n % 2 == 0;
    });
    print_r($even_numbers);
    // خروجی: Array ( [1] => 2 [3] => 4 [5] => 6 [7] => 8 [9] => 10 )
  2. استفاده از Arrow Function
    $numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
    $even_numbers = array_filter($numbers, fn($n) => $n % 2 == 0);
    print_r($even_numbers);
    // خروجی: Array ( [1] => 2 [3] => 4 [5] => 6 [7] => 8 [9] => 10 )

ببینید چقدر کد تمیز و خواناست! دیگه خبری از اون حلقه های قدیمی نیست.


مقایسه array_map و array_filter

بیاین این دو تا رو با هم مقایسه کنیم تا تفاوتشون رو بهتر درک کنیم.

ویژگی array_map array_filter
هدف اعمال یک تغییر روی هر عضو و ایجاد آرایه جدید حذف اعضا بر اساس یک شرط
مقدار برگشتی تابع Callback هر نوع مقداری true یا false
تعداد ورودی تابع Callback به تعداد آرایه های ورودی یک ورودی (عضو آرایه)

این دو تا تابع واقعا قدرت و سرعت کدنویسی شما رو بالا می برن.

حالا وقتشه که خودت رو بسنجی! شرکت توی آزمون این مبحث بهت کمک می کنه تا ببینی چقدر این مفاهیم رو درست و عمیق یاد گرفتی. با شرکت توی این کوییز، می تونی مهارت های عملی و دانش تئوری خودت رو در استفاده از توابع آرایه ای PHP تقویت کنی.

تعداد سوال 21
قیمت رایگانــ
زمانسنج ندارد
رده‌سنی همه سنین
وضعیت فعال
نظرات ندارد
معمای امروز 28 مهر 1404 - ترکیب اعداد و حروف - مخصوص ای کیو بالای 100

معمای امروز 28 مهر 1404 - ترکیب اعداد و حروف - مخصوص ای...

طبق معمول هر روز صبح ساعت 8 ، باز هم یک پازل عددی و حروفی سخت داریم. پازل...

معمای پیدا کردن رمز - 27 مهر 404 - 200 تومن داخل این کیفه می تونی رمزش رو پیدا کنی ؟

معمای پیدا کردن رمز - 27 مهر 404 - 200 تومن داخل این...

خوب یک معمای واقعا سخت که حل کردنش کار آسونی نیست . در این معما یک رمز قوی...

تو چند حرکت می تونی رمز این قفل رو پیدا کنی ؟‌ بازی با اعداد - تست هوش

تو چند حرکت می تونی رمز این قفل رو پیدا کنی ؟‌ بازی...

یه بازی ساده براتون آوردم که در عین سادگی نیاز به هوش هم داره. کافیه طبق راهنما عدد...

پازل ترتیب اعداد - روی عدد درست از یک تا آخر به ترتیب کلیک کن

پازل ترتیب اعداد - روی عدد درست از یک تا آخر به ترتیب...

به نظر ساده میاد نه؟‌ ولی انقدرها هم که فکر می کنی ساده نیست . مخصوصا وقتی که...

تمدید پاسپورت بدون کارت پایان خدمت

تمدید پاسپورت بدون کارت پایان خدمت

بسیاری از جوانان و مشمولان نظام وظیفه با موضوع تمدید پاسپورت بدون کارت پایان خدمت درگیرند؛ به‌خصوص کسانی...

عمل بینی در تهران: هزینه، بهترین جراح و نکات مهم انتخاب پزشک

عمل بینی در تهران: هزینه، بهترین جراح و نکات مهم انتخاب پزشک

برای اینکه بتوانید بهترین جراح عمل بینی در تهران را پیدا کنید، ابتدا باید هدف خود از عمل...

تبلیغات پیامکی منطقه‌ای: راهنمای کسب‌ و کارهای محلی کم‌ هزینه

تبلیغات پیامکی منطقه‌ای: راهنمای کسب‌ و کارهای محلی کم‌ هزینه

تبلیغات پیامکی منطقه ای «SMS by Region» یک روش های رایج تبلیغات منطقه ای هدفمند است که برای...

پخش عمده پارچه فاستونی؛ مناسب تولیدی‌ها و فروشگاه‌های پوشاک

پخش عمده پارچه فاستونی؛ مناسب تولیدی‌ها و فروشگاه‌های پوشاک

پیدا کردن یک منبع مطمئن برای پخش عمده پارچه فاستونی همیشه...

تعبیر خواب رنگ ها - لیست معنی انواع رنگ در خواب

تعبیر خواب رنگ ها - لیست معنی انواع رنگ در خواب

دیدن خواب رنگی موضوعی است که محققان بر روی آن به توافق نرسیده اند.برخی از محققان اعتقاد دارند...

چقدر می تونی چلوکباب سلطانی رو خوب درست کنی ؟ آزمون مهارت آشپزی

چقدر می تونی چلوکباب سلطانی رو خوب درست کنی ؟ آزمون مهارت آشپزی

چلوکباب سلطانی خب، اگه از اون دسته آدمایی هستی که به غذاهای سنتی و خوشمزه ایرانی علاقه داری،...

ضمایر انعکاسی پیچیده (kendini، kendisi، kendimiz)  - آزمون ترکی استانبولی

ضمایر انعکاسی پیچیده (kendini، kendisi، kendimiz) - آزمون ترکی استانبولی

گرامر زبان ترکی استانبولی - ضمیرهای انعکاسی پیچیده این آزمون جذاب و کاربردی در مورد قواعد و دستور...

بیماری کرونا چه زمان و چگونه تمام می شود ؟

بیماری کرونا چه زمان و چگونه تمام می شود ؟

این روزها همه ما تقریبا تمام دغدغه های گذشته خود را فراموش کرده ایم و فقط یک موضوع...