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

با ما همراه باشید 😉

تابع array_intersect()

کار این تابع شبیه به عملکرد تابع array_diff() است با این تفاوت که اگر کلیدهایی را علاوه بر آرایه اول در دیگر آرایه ها نیز یافت شود، به جای این که آن ها را از خروجی حذف کند، آن را به خروجی می فرستد. این تابع هم برای مقایسه چندین آرایه با یکدیگر است. شکل کلی این تابع به صورت زیر است:

array_intersect(array1, array2, array3, …)

پارامترها:

array1: اولین آرایه که با آرایه های دیگر مقایسه می شود و در صورت وجود هر مقدار از این آرایه در آرایه های دیگر، آن مقدار به خروجی فرستاده می شود.

array2: آرایه دوم که با آرایه اول مقایسه می شود (وجود حداقل یک آرایه بعد از اولین پارامتر الزامی است).

array3 , array4, …: آرایه های بعدی که با آرایه اول مقایسه می شوند (این پارامترها اختیاری است).

خروجی:

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

از نوشتن مثال خودداری می کنیم زیرا این طور به نظر می رسد که با کار این تابع آشنا شده باشید.

تابع array_intersect_assoc()

این تابع کلیدهایی از آرایه اول را برمی گرداند که آن کلید به همراه مقدارش در آرایه های دیگر وجود داشته باشد:

array_intersect_assoc(array1, array2, array3, …)

پارامترها:

array1: اولین آرایه که با آرایه های دیگر مقایسه می شود و در صورت وجود هر کلید و مقدار از این آرایه در آرایه های بعدی، آن کلید به خروجی فرستاده می شود.

array2: آرایه دوم که با آرایه اول مقایسه می شود (وجود حداقل یک آرایه بعد از اولین پارامتر الزامی است).

array3 , array4, …: آرایه های بعدی که با آرایه اول مقایسه می شوند (این پارامترها اختیاری است).

خروجی:

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

تابع array_intersect_key()

همچنین تابع array_intersect_key() کلیدهایی از آرایه اول را برمی گرداند که در حداقل یکی از آرایه های بعدی وجود داشته باشد. شکل کلی استفاده از این تابع به شکل زیر است:

array_intersect_key(array1, array2, array3, …)

پارامترها:

array1: اولین آرایه که با آرایه های دیگر مقایسه می شود و در صورت وجود هر کلید از این آرایه در حداقل یکی از آرایه های دیگر، آن مقدار به خروجی فرستاده می شود.

array2: آرایه دوم که با آرایه اول مقایسه می شود (وجود حداقل یک آرایه بعد از اولین پارامتر الزامی است).

array3 , array4, …: آرایه های بعدی که با آرایه اول مقایسه می شوند (این پارامترها اختیاری است).

خروجی:

یک آرایه است شامل آن دسته از کلیدهای آرایه اول که در آرایه های بعدی وجود هم یافت شود.

تابع array_fill()

این تابع با سلیقه شما یک آرایه می سازد. به این صورت که اندیس آغازین، تعداد خانه های آرایه و مقادیر آن به عنوان پارامترهای این تابع ارسال می شوند و یک آرایه به عنوان خروجی ارسال می شود. شکل کلی استفاده از این تابع به شکل زیر است:

array_fill(start, number, value)

پارامترها:

start: اندیس آغازین آرایه را مشخص می کند. در حالت عادی این مقدار برابر 0 است (خانه های آرایه از شماره 0 شروع می شود).

number: تعداد خانه های آرایه را مشخص می کند.

value: مقداری که در تک تک خانه های آرایه قرار می گیرد.

مثال:

 

خروجی:

آموزش کار با آرایه Array_fill() در آرایه ها در PHP

خروجی

در این مثال، آرایه ای ساختیم که اندیس آغازین آن (همانطور که در تصویر هم قابل مشاهده است) 2 است و تعداد خانه های این آرایه برابر 3 می باشد که مقدار هریک از این خانه ها برابر Alireza می باشد.

تابع array_flip()

این تابع آرایه ای را به عنوان پارامتر دریافت می کند و جای کلیدها و مقادیر آن را با هم عوض می کند. شکل کلی استفاده از این تابع به صورت زیر است:

array_flip(array)

پارامترها:

array: آرایه موردنظر

خروجی:

مثال آموزش تابع array_flip() در PHP

خروجی

همان آرایه ی مشخص شده در پارامتر array اما جای کلیدها و مقادیر با هم عوض می شود.

مثال:

 

خروجی:

تابع array_key_exists()

همانطور که از نام این تابع می توان فهمید، کار این تابع جست و جو یک کلید درون یک آرایه است. شکل کلی استفاده از این تابع به شکل زیر است:

array_key_exists(key, array)

پارامترها:

key: نام کلید مورد جست و جو.

array: آرایه ای که کلید موردنظر در آن جست و جو می شود.

خروجی:

در صورت وجود کلید در آرایه مقدار TRUE و در صورت عدم یافتن کلید مقدار FALSE برگردانده می شود.

مثال:

 

خروجی:

مثال آموزش تابع array_key_exists() در PHP

خروجی

در این مثال وجود کلید “age” درون آرایه person را بررسی می کنیم و درصورت وجود پیغام مناسب (“کلید موجود است”) و درصورت عدم وجود کلید نیز پیغام “کلید یافت نشد” نمایش داده می شود.

تابع array_search()

این تابع نیز عمل جست و جو را انجام می دهد اما نه جست و جو بر روی کلیدها بلکه تابع array_search() مقادیر را جست و جو می کند و درصورت یافتن آن نام کلید آن را برمی گرداند. شکل کلی استفاده از این تابع به شکل زیر است:

array_search(value, array, strick)

پارامترها:

value: مقداری که می خواهیم جست و جو شود.

array: آرایه ای که جست و جو در آن انجام می شود.

strick: این پارامتر می تواند یکی از دو مقدار TRUE یا FALSE را به شکل زیر دریافت کند:

TRUE: در این صورت مقادیر رشته ای با مقادیر عددی یکی نیستند. برای مثال 8 با “8” برابر نیست.

FALSE: این مقدار مقدار پیشفرض است و همانطور که حدس می زنید در این حالت مقادیر رشته ای با عددی یکی هستند.

خروجی:

اگر مقدار در آرایه یافت شود نام کلید آن برگردانده می شود و در غیر این صورت مقدار FALSE برگردانده می شود.

مثال:

 

خروجی:

مثالی از استفاده تابع array_search() در PHP

خروجی

در این مثال نتیجه ی جست و جوی مقدار Alireza در آرایه person را در متغیر result قرار دادیم. سپس مقدار آن را چک می کنیم و در صورت وجود نتیجه مقدار کلید آن را (که همان مقدار موجود در متغیر result است) نمایش می دهیم و در صورت عدم وجود نتیجه پیغام مناسب نمایش داده می شود.

تابع array_keys()

این تابع تمام کلیدهای یک آرایه را که دارای مقدار مشخصی باشند را به شکل یک آرایه برمی گرداند. شکل کلی استفاده از این تابع به شکل زیر است:

array_keys(array, value, strick)

پارامترها:

array: آرایه اصلی که کلیدها از آن انتخاب می شوند را مشخص می کند.

value: مقداری که در آرایه جست و جو می شود. در اصل کار این تابع جست و جو نیست پس می توان گفت این پارامتر خانه هایی از آرایه را مشخص می کند که دارای این مقدار باشند.

strick: حساسیت کار این تابع را مشخص می کند و می تواند یکی از دو مقدار TRUE یا FALSE را به شکل زیر داشته باشد:

TRUE: حساسیت جست و جو بالا می رود و مقادیر عددی و رشته ای در این حالت یکی نیستند.

FALSE: مقدار پیشفرض. در این حالت مقادیر عددی و رشته ای را یکی می داند. برای مثال 8 برابر با “8” است.

خروجی:

آرایه ای است از کلیدهای آرایه ورودی که برگشت داده می شوند.

مثال1:

 

خروجی:

مثالی از استفاده تابع array_keys() در PHP

خروجی

در این مثال آرایه ای داریم به نام persons که نام اشخاص به علاوه سن آن ها مشخص شده است. با استفاده از تابع array_keys() آن دسته افرادی که دارای 20 سال سن هستند در متغیر result به شکل آرایه ذخیره می شوند. سپس با استفاده از تابع empty() تعداد نتایج را بررسی کردیم تا اگر موردی یافت نشد پیغام مناسب چاپ کند.

در صورت وجود نتیجه با استفاده از تابع count() تعداد خانه های آرایه result را به دست آورده و چاپ می کنیم و پس از آن با استفاده از تابع print_r() نتایج جست و جو را چاپ  می کنیم.

مثال2:

در این مثال می خواهیم کاربرد پارامتر strick را مشخص کنیم. پس کد مثال پیش را به شکل زیر تغییر می دهیم:

 

خروجی:

مثالی از استفاده تابع array_keys() در PHP

خروجی

مقدار پارامتر strick به صورت پیشفرض (در مثال قبل) برابر FALSE است؛ پس در مثال پیش نوشتن 20 و “20” تفاوتی نداشت اما حالا که مقدار پارامتر strick را برابر TRUE کردیم پس تنها مقادیر رشته ای جدا می شوند پس هیچ نتیجه ای نخواهیم داشت.