توضیح:
این تابع مقادیر آیتم های یک آرایه را براساس شرط خاصی که ما تعیین کرده ایم فیلتر می کند. در صورتی که شرط برابر با true باشد آن آیتم را برگشت می دهد.
این شرط گذاری از طریق تابع بی نامی که برای هر آیتم فراخوانی می شود، صورت می گیرد.
آرایه بازگشتی دارای آیتم هایی بهمراه کلیدهای خودشان است.
نحوه نوشتن:
1 |
array_filter(array, callbackfunction, flag); |
پارامترها:
- مقدار array: آرایه موردنظر جهت فیلتر کردن.(ضروری)
- مقدار callbackfunction: یک تابع بی نام برای قرار دادن دستور شرطی و بازگشت مقدار در صورت true بودن شرط.(اختیاری)
- مقدار flag: تعیین تنظیمات جهت نحوه بررسی کردن تابع براساس کلید یا کلید و مقدار.(اختیاری)
مقادیر عبارتند از:
- مقدار ARRAY_FILTER_USE_KEY: به جای بررسی مقدار آیتم های آرایه کلیدهای آن جهت بررسی ارسال می شود.
- مقدار ARRAY_FILTER_USE_BOTH: هم کلید و هم مقدار برای بررسی به تابع بی نام ارسال می شوند.
مقدار بازگشت:
آرایه ای از آیتم ها براساس شرط تعیین شده
نسخه پشتیبانی:
(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
مثال:
1 2 3 4 5 6 7 8 9 10 |
<?php function test_odd($var) { return($var & 1); } $a1=array(1,3,2,3,4); print_r(array_filter($a1,"test_odd")); ?> //Array ( [0] => 1 [1] => 3 [3] => 3 ) |
1 2 3 4 5 6 7 8 9 10 |
<?php function test_odd($var) { return(strpos($var,"5")); } $a1=array("amir5"=>"javanmir","shahryar2"=>"barati"); print_r(array_filter($a1,"test_odd",ARRAY_FILTER_USE_KEY)); ?> //Array ( [amir5] => javanmir ) |