
توی دوره رایگان PHP، هر چیزی که برای حرفهای شدن نیاز داری رو یاد میگیری! از مفاهیم پایه تا پیشرفته، همراه با یه پروژه واقعی برای ساخت یه سایت مثل آپارات.
مشاهده بیشتر
توی این دوره با هم یه وبسایت خبری واقعی رو از صفر میسازیم! از طراحی دیتابیس و احراز هویت تا ساخت API و یه پنل مدیریت حرفهای، همه رو یاد میگیریم و آماده پروژههای واقعی میشی!
مشاهده بیشترمشخصات مقاله
آموزش توابع کار با آرایه در PHP – توابع انجام عملیات بر روی آرایه
آموزش توابع کار با آرایه در PHP – توابع انجام عملیات بر روی آرایه
PHP تعدادی تابع درون ساخته و از پیش تعریف شده جهت انجام عملیات مختلف بر روی آرایه و دستکاری مقادیر آن ها به روش های مختلف دارد و همان طور که می دانید آرایه یک ساختار داده ای کارامد برای ذخیره، مدیریت و انجام عملیات بر روی متغیرها می باشد.
ثوابت آرایه PHP
شماره
ثابت مورد نظر و شرح کاربرد آن
1
CASE_LOWER
همراه با تابع array_change_key_case() جهت تبدیل کلید های المان های آرایه از حروف بزرگ به حروف کوچک یا lowercase مورد استفاده قرار می گیرد.
همراه با تابع array_change_key_case() جهت تبدیل کلید های المان های آرایه از حروف بزرگ به حروف کوچک یا lowercase مورد استفاده قرار می گیرد.
2
CASE_UPPER
همراه با تابع array_change_key_case() جهت تبدیل کلید المان های آرایه از حروف کوچک به حروف بزرگ مورد استفاده قرار می گیرد.
همراه با تابع array_change_key_case() جهت تبدیل کلید المان های آرایه از حروف کوچک به حروف بزرگ مورد استفاده قرار می گیرد.
3
SORT_ASC
همراه با تابع array_multisort() جهت مرتب سازی المان های آرایه به ترتیب صعودی بکار می رود.
همراه با تابع array_multisort() جهت مرتب سازی المان های آرایه به ترتیب صعودی بکار می رود.
4
SORT_DESC
همراه با تابع array_multisort() جهت مرتب سازی المان های موجود در آرایه به ترتیب نزولی بکار می رود.
همراه با تابع array_multisort() جهت مرتب سازی المان های موجود در آرایه به ترتیب نزولی بکار می رود.
5
SORT_REGULAR
به منظور مقایسه و مرتب سازی آیتم ها به روش معمولی مورد استفاده قرار می گیرد.
به منظور مقایسه و مرتب سازی آیتم ها به روش معمولی مورد استفاده قرار می گیرد.
6
SORT_NUMERIC
به منظور مقایسه و مرتب سازی آیتم ها به صورت عددی بکار می رود.
به منظور مقایسه و مرتب سازی آیتم ها به صورت عددی بکار می رود.
7
SORT_STRING
به منظور مقایسه ی آیتم های آرایه به مثابه ی رشته، جهت مرتب سازی آن ها مورد استفاده قرار می گیرد.
به منظور مقایسه ی آیتم های آرایه به مثابه ی رشته، جهت مرتب سازی آن ها مورد استفاده قرار می گیرد.
8
SORT_LOCALE_STRING
به منظور مقایسه ی آیتم های آرایه به عنوان رشته با توجه به زبان جاری (locale) مورد استفاده قرار می گیرد.
به منظور مقایسه ی آیتم های آرایه به عنوان رشته با توجه به زبان جاری (locale) مورد استفاده قرار می گیرد.
9
COUNT_NORMAL
10
COUNT_NORMAL
11
EXTR_OVERWRITE
12
EXTR_SKIP
13
EXTR_PREFIX_SAME
14
EXTR_PREFIX_ALL
15
EXTR_PREFIX_INVALID
16
EXTR_PREFIX_IF_EXISTS
17
EXTR_IF_EXISTS
18
EXTR_REFS
لیست توابع آرایه
نکته :
هر کدام از آرایه ها دارای لینک به صفحه ی توضیحات کامل به همراه کد جهت سهولت در آموزش شما عزیزان می باشد .
Sr.No
تابع و شرح کاربرد آن
قدیمی ترین ویرایش PHP که از این تابع پشتیبانی می کند
2
array_change_key_case()
تمامی کلیدهای آیتم های آرایه را از حروف کوچک به بزرگ و از بزرگ به کوچک تبدیل کرده و آن را در خروجی برمی گرداند.
تمامی کلیدهای آیتم های آرایه را از حروف کوچک به بزرگ و از بزرگ به کوچک تبدیل کرده و آن را در خروجی برمی گرداند.
4
3
array_chunk()
یک آرایه را با توجه به مقدار پارامتر size به یک یا چند آرایه ی کوچکتر تقسیم می کند و در خروجی آرایه های جدیدی تولید می کند.
یک آرایه را با توجه به مقدار پارامتر size به یک یا چند آرایه ی کوچکتر تقسیم می کند و در خروجی آرایه های جدیدی تولید می کند.
4
4
array_combine()
با ترکیب دو آرایه، یک آرایه ی جدید تولید می کند به طوری که آیتم های آرایه اول به عنوان کلیدهای آرایه و آیتم های آرایه ی دوم به مثابه ی مقادیر آن مورد استفاده قرار می گیرند.
با ترکیب دو آرایه، یک آرایه ی جدید تولید می کند به طوری که آیتم های آرایه اول به عنوان کلیدهای آرایه و آیتم های آرایه ی دوم به مثابه ی مقادیر آن مورد استفاده قرار می گیرند.
5
5
array_count_values()
تعداد دفعات تکرار آیتمی با مقدار یکسان در آرایه را شمرده و در خروجی برمی گرداند. به عبارت دیگر، شمار عنصرهای یکسان را در یک آرایه برشمرده و در خروجی برمی گرداند.
تعداد دفعات تکرار آیتمی با مقدار یکسان در آرایه را شمرده و در خروجی برمی گرداند. به عبارت دیگر، شمار عنصرهای یکسان را در یک آرایه برشمرده و در خروجی برمی گرداند.
4
6
array_diff()
این تابع مقادیر آیتم های آرایه را باهم مقایسه کرده و تفاوت آن ها را در خروجی بازگردانی می کند.
این تابع مقادیر آیتم های آرایه را باهم مقایسه کرده و تفاوت آن ها را در خروجی بازگردانی می کند.
4
7
array_diff_assoc()
مقادیر و کلیدهای دو آرایه را مقایسه کرده و آنچه بین دو مشترک نیست را در خروجی برمی گرداند.
مقادیر و کلیدهای دو آرایه را مقایسه کرده و آنچه بین دو مشترک نیست را در خروجی برمی گرداند.
4
8
array_diff_key()
کلیدهای دو یا چند آرایه را با هم مقایسه کرده و آنچه بین دو اختلاف دارد را به عنوان خروجی برمی گرداند.
کلیدهای دو یا چند آرایه را با هم مقایسه کرده و آنچه بین دو اختلاف دارد را به عنوان خروجی برمی گرداند.
5
9
array_diff_uassoc()
کلیدها و مقادیر دو یا چند آرایه را (البته بر اساس تنظیمات شخصی کاربر) با یکدیگر مقایسه کرده و تفاوت های آن ها را در خروجی برمی گرداند.
کلیدها و مقادیر دو یا چند آرایه را (البته بر اساس تنظیمات شخصی کاربر) با یکدیگر مقایسه کرده و تفاوت های آن ها را در خروجی برمی گرداند.
5
10
array_diff_ukey()
دو یا چند آرایه را بر اساس کلیدهای آن ها (با تنظیمات شخصی کاربر) با یکدیگر مقایسه کرده و تفاوت آن ها را در خروجی برمی گرداند.
دو یا چند آرایه را بر اساس کلیدهای آن ها (با تنظیمات شخصی کاربر) با یکدیگر مقایسه کرده و تفاوت آن ها را در خروجی برمی گرداند.
5
13
array_filter()
المان های آرایه ی ورودی را با استفاده از یک تابع بازفراخوان که به عنوان آرگومان دوم به آن ارسال شده، فیلتر می کند.
المان های آرایه ی ورودی را با استفاده از یک تابع بازفراخوان که به عنوان آرگومان دوم به آن ارسال شده، فیلتر می کند.
4
14
array_flip()
جای کلیدها و مقادیر متناظر هریک (مقادیر تخصیص یافته به کلیدها) در آرایه را بایکدیگر تغییر می دهد.
جای کلیدها و مقادیر متناظر هریک (مقادیر تخصیص یافته به کلیدها) در آرایه را بایکدیگر تغییر می دهد.
4
15
array_intersect()
مقادیر آیتم های دو یا چند آرایه را بایکدیگر مقایسه کرده و موارد منطبق و مشترک بین آن ها را در خروجی برمی گرداند.
مقادیر آیتم های دو یا چند آرایه را بایکدیگر مقایسه کرده و موارد منطبق و مشترک بین آن ها را در خروجی برمی گرداند.
4
16
array_intersect_assoc()
کلیدها و مقادیر دو یا چندین آرایه را با هم مقایسه کرده و موارد منطبق را برمی گرداند.
کلیدها و مقادیر دو یا چندین آرایه را با هم مقایسه کرده و موارد منطبق را برمی گرداند.
4
17
array_intersect_key()
کلیدهای دو یا چند آرایه را بایکدیگر مقایسه کرده و موارد منطبق را در خروجی برمی گرداند.
کلیدهای دو یا چند آرایه را بایکدیگر مقایسه کرده و موارد منطبق را در خروجی برمی گرداند.
5
18
array_intersect_uassoc()
کلیدها و مقادیر متناظر دو یا چند آرایه را به وسیله ی تابع بازفراخوان (تعریف شده توسط کاربر) که به عنوان آرگومان به آن ارسال شده مقایسه کرده و موارد منطبق را در خروجی برمی گرداند.
کلیدها و مقادیر متناظر دو یا چند آرایه را به وسیله ی تابع بازفراخوان (تعریف شده توسط کاربر) که به عنوان آرگومان به آن ارسال شده مقایسه کرده و موارد منطبق را در خروجی برمی گرداند.
5
19
array_intersect_ukey()
کلیدهای آرایه را با استفاده از تابع بازفراخوان (تعریف شده توسط کاربر) مقایسه کرده و موارد منطبق و مشترک بین دو یا چند آرایه را در خروجی برمی گرداند.
کلیدهای آرایه را با استفاده از تابع بازفراخوان (تعریف شده توسط کاربر) مقایسه کرده و موارد منطبق و مشترک بین دو یا چند آرایه را در خروجی برمی گرداند.
5
20
array_key_exists()
بررسی می کند آیا کلید مورد نظر (ارسال شده به عنوان آرگومان) در آرایه وجود دارد یا خیر.
بررسی می کند آیا کلید مورد نظر (ارسال شده به عنوان آرگومان) در آرایه وجود دارد یا خیر.
4
22
array_map()
تمامی مقادیر آرایه را به ترتیب به یک تابع بازفراخوان (تعریف شده توسط کاربر) ارسال کرده و یک آرایه با مقادیر جدید بازمی گرداند.
تمامی مقادیر آرایه را به ترتیب به یک تابع بازفراخوان (تعریف شده توسط کاربر) ارسال کرده و یک آرایه با مقادیر جدید بازمی گرداند.
4
23
array_merge()
این تابع یک یا چند آرایه را با یکدیگر ادغام کرده و آن ها را در یک آرایه ی واحد قرار می دهد.
این تابع یک یا چند آرایه را با یکدیگر ادغام کرده و آن ها را در یک آرایه ی واحد قرار می دهد.
4
24
array_merge_recursive()
تابع جاری دو یا چند آرایه را بایکدیگر ادغام کرده و در یک آرایه ی واحد می گنجاند. تفاوت این متد با متد بالا در این است که در صورت برخورد با آیتم هایی که دارای کلید یکسان هستند، مقادیر آن ها را در یک آرایه ی جدید ادغام می شود.
المان های دو یا چند آرایه را با یکدیگر ادغام کرده به طوری که مقادیر یکی به انتهای مقدار قبلی الصاق می شود. در خروجی تابع یک آرایه ی جدید بازگردانی می شود.
تابع جاری دو یا چند آرایه را بایکدیگر ادغام کرده و در یک آرایه ی واحد می گنجاند. تفاوت این متد با متد بالا در این است که در صورت برخورد با آیتم هایی که دارای کلید یکسان هستند، مقادیر آن ها را در یک آرایه ی جدید ادغام می شود.
المان های دو یا چند آرایه را با یکدیگر ادغام کرده به طوری که مقادیر یکی به انتهای مقدار قبلی الصاق می شود. در خروجی تابع یک آرایه ی جدید بازگردانی می شود.
4
25
array_multisort()
دو یا چند آرایه ی معمولی یا چندبعدی (تودرتو) را مرتب سازی کرده و در خروجی آرایه ی منظم را برمی گرداند.
دو یا چند آرایه ی معمولی یا چندبعدی (تودرتو) را مرتب سازی کرده و در خروجی آرایه ی منظم را برمی گرداند.
4
30
array_rand()
یک یا چند کلید را به صورت تصادفی از آرایه انتخاب کرده و به عنوان خروجی برمی گرداند.
یک یا چند کلید را به صورت تصادفی از آرایه انتخاب کرده و به عنوان خروجی برمی گرداند.
4
31
array_reduce()
آرایه ی ورودی را با استفاده از تابع اختصاصی کاربر (تابع بازفراخوان) به رشته تبدیل کرده و آن را در خروجی برمی گرداند.
آرایه ی ورودی را با استفاده از تابع اختصاصی کاربر (تابع بازفراخوان) به رشته تبدیل کرده و آن را در خروجی برمی گرداند.
4
33
array_search()
آرایه ی جاری را به منظور پیدا کردن مقدار مورد نظر جستجو کرده و در صورت یافتن مقدار، کلید متناظر را در خروجی برمی گرداند.
آرایه ی جاری را به منظور پیدا کردن مقدار مورد نظر جستجو کرده و در صورت یافتن مقدار، کلید متناظر را در خروجی برمی گرداند.
4
34
array_shift()
اولین المان را از آرایه حذف کرده و مقدار المان محذوف را به عنوان خروجی بازگردانی می کند.
اولین المان را از آرایه حذف کرده و مقدار المان محذوف را به عنوان خروجی بازگردانی می کند.
4
38
array_udiff()
مقادیر دو آرایه را با استفاده از یک تابع بازفراخوان (تعریف شده توسط کاربر) با یکدیگر مقایسه کرده و در خروجی اختلاف بین آن ها را در قالب آرایه ی جدید برمی گرداند.
مقادیر دو آرایه را با استفاده از یک تابع بازفراخوان (تعریف شده توسط کاربر) با یکدیگر مقایسه کرده و در خروجی اختلاف بین آن ها را در قالب آرایه ی جدید برمی گرداند.
5
39
array_udiff_assoc()
این تابع کلیدها و مقادیر دو یا چند آرایه را با یکدیگر مقایسه کرده و اختلاف بین آن ها را در خروجی برمی گرداند.
این تابع کلیدها و مقادیر دو یا چند آرایه را با یکدیگر مقایسه کرده و اختلاف بین آن ها را در خروجی برمی گرداند.
5
40
array_udiff_uassoc()
کلیدها و مقادیر آرایه را توسط یک تابع پیش تعریف شده توسط کاربر مقایسه کرده و تفاوت بین آن ها را در قالب یک آرایه به عنوان خروجی برمی گرداند.
کلیدها و مقادیر آرایه را توسط یک تابع پیش تعریف شده توسط کاربر مقایسه کرده و تفاوت بین آن ها را در قالب یک آرایه به عنوان خروجی برمی گرداند.
5
41
array_uintersect()
مقادیر دو یا چند آرایه را توسط یک تابع اختصاصی و تعریف شده توسط کاربر مقایسه کرده و در خروجی موارد مشترک بین آن ها را برمی گرداند.
مقادیر دو یا چند آرایه را توسط یک تابع اختصاصی و تعریف شده توسط کاربر مقایسه کرده و در خروجی موارد مشترک بین آن ها را برمی گرداند.
5
42
array_uintersect_assoc()
کلیدها و مقادیر دو یا چند آرایه را با استفاده از تابع تعریف شده توسط کاربر مقایسه کرده و موارد منطبق را در قالب یک آرایه به عنوان خروجی برمی گرداند.
کلیدها و مقادیر دو یا چند آرایه را با استفاده از تابع تعریف شده توسط کاربر مقایسه کرده و موارد منطبق را در قالب یک آرایه به عنوان خروجی برمی گرداند.
5
43
array_uintersect_uassoc()
مقادیر و کلیدهای دو یا چند آرایه را با استفاده از یک تابع بازفراخوان (تعریف شده توسط کاربر) مقایسه کرده و مطابقت های بین آن ها را در خروجی برمی گرداند.
مقادیر و کلیدهای دو یا چند آرایه را با استفاده از یک تابع بازفراخوان (تعریف شده توسط کاربر) مقایسه کرده و مطابقت های بین آن ها را در خروجی برمی گرداند.
5
47
array_walk()
تابع بازفراخوان یا تعریف شده توسط کاربر را که به عنوان آرگومان به آن ارسال شده، بر روی تک تک المان های آرایه فراخوانی می کند. به عبارت دیگر، تمامی المان های عضو یک آرایه را به تابع بازفراخوان پاس می دهد.
تابع بازفراخوان یا تعریف شده توسط کاربر را که به عنوان آرگومان به آن ارسال شده، بر روی تک تک المان های آرایه فراخوانی می کند. به عبارت دیگر، تمامی المان های عضو یک آرایه را به تابع بازفراخوان پاس می دهد.
3
48
array_walk_recursive()
تابع بازفراخوان (تعریف شده توسط کاربر) که به عنوان آرگومان به آن ارسال شده را به صورت بازگشتی بر روی هر یک از عناصر عضو آرایه جاری صدا می زند. با این متد، برخلاف متد قبلی، می توان با آرایه های تودرتو عمیق به راحتی کار کرد.
تابع بازفراخوان (تعریف شده توسط کاربر) که به عنوان آرگومان به آن ارسال شده را به صورت بازگشتی بر روی هر یک از عناصر عضو آرایه جاری صدا می زند. با این متد، برخلاف متد قبلی، می توان با آرایه های تودرتو عمیق به راحتی کار کرد.
5
49
arsort()
المان های یک آرایه ی متناظر (associative) را به صورت نزولی بر اساس مقدار مرتب می کند. ترتیب المان های یک آرایه ی متناظر را معکوس می کند.
المان های یک آرایه ی متناظر (associative) را به صورت نزولی بر اساس مقدار مرتب می کند. ترتیب المان های یک آرایه ی متناظر را معکوس می کند.
3
51
compact()
یک آرایه که دربردارنده ی متغیر و مقدار آن ها است در حافظه ایجاد می کند. به عبارت دیگر از متغیرها یک آرایه ایجاد می کند.
یک آرایه که دربردارنده ی متغیر و مقدار آن ها است در حافظه ایجاد می کند. به عبارت دیگر از متغیرها یک آرایه ایجاد می کند.
4
54
each()
جفت کلید (اسم) و مقدار المان جاری را از آرایه ی میزبان بازگردانی نموده و اشاره گر داخلی را به جلو می برد.
جفت کلید (اسم) و مقدار المان جاری را از آرایه ی میزبان بازگردانی نموده و اشاره گر داخلی را به جلو می برد.
3
55
end()
اشاره گر داخلی آرایه را بر روی آخرین المان تنظیم نموده و آن المان را در خروجی برمی گرداند. به عبارت دیگر آخرین المان آرایه ی حاضر را در خروجی برمی گرداند.
اشاره گر داخلی آرایه را بر روی آخرین المان تنظیم نموده و آن المان را در خروجی برمی گرداند. به عبارت دیگر آخرین المان آرایه ی حاضر را در خروجی برمی گرداند.
3
56
extract()
این تابع مقادیر المان های آرایه را داخل متغیرهایی که اسم آن ها با کلید المان در آرایه یکسان است (و با همان اندیس)، قرار می دهد.
این تابع مقادیر المان های آرایه را داخل متغیرهایی که اسم آن ها با کلید المان در آرایه یکسان است (و با همان اندیس)، قرار می دهد.
3
59
krsort()
المان های یک آرایه ی متناظر (associative) را بر اساس کلید به ترتیب نزولی مرتب می سازد.
المان های یک آرایه ی متناظر (associative) را بر اساس کلید به ترتیب نزولی مرتب می سازد.
3
60
ksort()
المان های یک آرایه ی متناظر (associative) را بر اساس کلید به ترتیب صعودی مرتب سازی می کند.
المان های یک آرایه ی متناظر (associative) را بر اساس کلید به ترتیب صعودی مرتب سازی می کند.
3
62
natcasesort()
یک آرایه را با استفاده از الگوریتم natural order که به کوچک و بزرگی حروف حروف غیر حساس است، مرتب سازی می کند.
یک آرایه را با استفاده از الگوریتم natural order که به کوچک و بزرگی حروف حروف غیر حساس است، مرتب سازی می کند.
4
64
next()
این تابع اشاره گر داخلی آرایه را جلو برده و المان بعدی موجود در آرایه را به عنوان خروجی برمی گرداند.
این تابع اشاره گر داخلی آرایه را جلو برده و المان بعدی موجود در آرایه را به عنوان خروجی برمی گرداند.
3
65
pos()
این تابع مقدار المان جاری در آرایه را بازگردانی می کند. pos() اسم دیگری برای current() می باشد.
این تابع مقدار المان جاری در آرایه را بازگردانی می کند. pos() اسم دیگری برای current() می باشد.
3
66
prev()
اشاره گر داخلی آرایه را به عقب برگردانده و المان قبلی موجود در آرایه را به عنوان خروجی برمی گرداند.
اشاره گر داخلی آرایه را به عقب برگردانده و المان قبلی موجود در آرایه را به عنوان خروجی برمی گرداند.
3
68
reset()
اشاره گر داخلی یک آرایه را بر روی اولین المان تنظیم کرده و اولین المان آن را برمی گرداند.
اشاره گر داخلی یک آرایه را بر روی اولین المان تنظیم کرده و اولین المان آن را برمی گرداند.
3
69
rsort()
یک آرایه را به ترتیب نزولی مرتب سازی می کند. به عبارت دیگر ترتیب المان های یک آرایه را معکوس می سازد.
یک آرایه را به ترتیب نزولی مرتب سازی می کند. به عبارت دیگر ترتیب المان های یک آرایه را معکوس می سازد.
3
71
sizeof()
تعدا المان های موجود در یک آرایه را به عنوان خروجی برمی گرداند. این تابع در واقع کاربردی مشابه تابع sizeof() دارد.
تعدا المان های موجود در یک آرایه را به عنوان خروجی برمی گرداند. این تابع در واقع کاربردی مشابه تابع sizeof() دارد.
3
73
uasort()
المان های یک آرایه را با استفاده از تابع بازفراخوان که توسط کاربر تعریف می شود مرتب می سازد.
المان های یک آرایه را با استفاده از تابع بازفراخوان که توسط کاربر تعریف می شود مرتب می سازد.
3
74
uksort()
المان های یک آرایه را بر اساس کلید با استفاده از تابع بازفراخوان و تعریف شده توسط کاربر مرتب سازی می کند.
المان های یک آرایه را بر اساس کلید با استفاده از تابع بازفراخوان و تعریف شده توسط کاربر مرتب سازی می کند.
3
75
usort()
المان های یک آرایه را بر اساس مقادیر آن ها با استفاده تابع بازفراخوان (callback) تعریف شده توسط کاربر مرتب سازی می کند.
المان های یک آرایه را بر اساس مقادیر آن ها با استفاده تابع بازفراخوان (callback) تعریف شده توسط کاربر مرتب سازی می کند.
3