طراحی سایت, ساخت ربات تلگرام, آموزش php , سورس کد php ,سورس ربات تلگرام , سورس فروشگاه اینترنتی , آموزش طراحی وب

مرتب کردن آرایه در PHP


مرتب کردن آرایه در PHP

زبان php شامل توابع قدرتمند و همچنین زیادی برای کار با آرایه ها در php دارد که بسیار جالب و کاربردی هستند . برای مثال array_keys() , array_values() , implode  و explode و غیره .. . توابع مرتب کردن آرایه در php  بسیار مهم است که باید با آن ها آشنا باشید .

مرتب کردن آرایه در php که شامل شرایط مختلفی است که کدام گروه از المان ها باید مرتب شوند , متفاوت است  . بخاطر این شرایط,  مرتب سازی می تواند بر اساس نوع های مختلفی مانند کلید (key) , یا مقدار (value) و .. انجام شود.

PHP لیستی از توابع از پیش ساخته شده (inbuilt) برای مرتب کردن آرابه در php ارایه داده است . که شامل :

  1. sort() – آرایه را از کوچک به بزرگ یا صعودی (ASCending) مرتب می کند .که دو آرگومان , یکی آرایه ای که می خواهیم مرتب کنیم و دیگری گزینه های مرتب سازی , را می پذیرد . اگر برای آرگومان دوم موردی ست نشود , مقدار پیش فرض SORT_REGULAR خواهد بود . این موارد را بصورت جزیی تر در ادامه خواهیم دید.
  2. rsort() –  آرایه را از بزرگ به کوچک یا نزولی (DESCending) مرتب می کند
  3. asort() – آرایه انجمنی را به صورت صعودی و بر حسب مقدار عناصر مرتب می کند
  4. arsort() – آرایه انجمنی را به صورت نزولی و بر حسب مقدار عناصر مرتب می کند
  5. usort() – به جای آپشن های مرتب سازی , یک تابع بازگشتی (callback-function) که بر اساس مرتب سازی هر خانه از آرایه که مرتب می شود , فراخوانی و بر طبق شرایط عملیاتی انجام می دهد.
  6. uasort() – این تابع ترکیبی از تابع usort() و asort() است که آرایه را بصورت نزولی و بر حسب مقادیر مرتب و همراه با این عملیات تابع تعیین شده توسط کاربر را اجرا می کند .
  7. array_multisort() – این تابع برای مرتب کردن چندین آرایه در php بطور همزمان به کار می رود . همچنین برای مرتب کردن آرایه های چند بعدی با ست کردن آپشن مشخص مرتب سازی استفاده می شود .
  8. natsort() – توابع مرتب کردن آرایه در php که بالا لیست شدند برای مرتب کردن آرایه بر اساس استانداردی که تعریف شده استفاده می شوند . اما تابع natsort() , برای مرتب سازی آرایه براساس استانداردهایی که شخص تعیین می کند , می توان از آن بهره برد .
  9. natcasesort() – مشابه تابع natsort() است اما برای مواردی که کوچک و بزرگ بودن کاراکتر ها مهم نباشد (case-insensitive) استفاده می شود.
حتما بخوانید  تابع Explode و Implode در PHP

مرتب کردن آرایه در PHP

طبقه بندی توابع بالا برای مرتب سازی آرایه در php بر اساس مقادیر (value) استفاده می شود . بعضی از توابع که مرتب سازی آرایه ها را بر اساس کلید (key) مشخص می کند بصورت زیر است

  • Ksort() – مشابه تابع sort() که آرایه را از کوچک به بزرگ یا صعودی (ASCending) مرتب می کند , است اما به جای مقدار بر اساس کلید مرتب می کند
  • Krsort() – این تابع برای مرتب کردن آرایه بر اساس کلید و بصورت نزولی استفاده می شود .
  • Uksort() – ترکیب دو تابع ksort() و usort() است که بر اساس کلید مرتب می کند و به عنوان آرگومان دوم یک تابع بازگشتی را می پذیرد .

 

بنابراین , تعداد زیادی از توابع برای مرتب کردن آرایه در php بر اساس شرایط مختلف وجود دارد . حالا نیاز داریم که در مورد flag آپشن هایی که در بالا اشاره شد و می تواند در مرتب سازی آرایه بر اساس مقدار (value) مهم باشد را میبینیم .

  • SORT_REGULAR – اگر هیچ آپشنی ست نشود , این مقدار پیش فرض برای توابع مرتب سازی استفاده می شود . بر اساس این آپشن مقادیر آرایه بدون هیچ تغییری مرتب خواهند شد .
  • SORT_NUMERIC – همانطور که از نام مشخص است , بر اساس اعداد مرتب می کند.
  • SORT_STRING – با مشخص کردن این فلگ , بر اساس حروف الفبا (alphabetical) مرتب می شود .
  • SORT_NATURAL – به شما امکان مشخص کردن دستی مرتب سازی را می دهد .
  • SORT_FLAG_CASE – اگر این آپشن ست شود , مرتب سازی حروف الفبا بدون اهمیت کوچک و بزرگ بودن انجام می شود .
  • SORT_LOCALE_STRING – این فلگ به شما اجازه مرتب سازی بصورت الفبایی و بر اساس زبان کانفیگ شده و یا ست شده توسط تابع locate() انجام می دهد .
حتما بخوانید  آموزش مدیریت خطا در php

 

مثال مرتب کردن آرایه در php

خب یک مثال از تفاوت مرتب سازی استاندارد و طبیعی بین تابع sort() و natsort() را ببینیم .

در اسکریپت php بالا , تابع sort() مرتب کردن اعداد در فرمت استاندارد استفاده شده است . با مشخص کردن آپشن SORT_STRING , همه المان ها بر اساس استاندارد الفبایی اعداد مرتب می شود و خروجی بصورت زیر است :

در این مورد اجازه بدید , از تابع natsort() برای دریافت نتیجه مرتب سازی ببنیم . برای اینکار کافی است تابع زیر را به جای خط دوم کد php بالا استفاده کنید .

حالا نتایج را می بینید .(کار با اعداد در php)

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

هر سوالی داشتید ، از قسمت نظرات ارسال کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق و پیروز باشید

حسن شفیعی
مدرس ، پنتستر ، توسعه دهنده اپلیکیشن های تحت وب ، عضو مرکز حامی نخبگان و از مدیران و اعضای رسمی تیم امنیتی آشیانه هستم . علاقه خاصی به زبان php و امنیت شبکه و لینوکس دارم و هر روز تلاش می کنم به این حوزه ها مسلط تر شوم و اطلاعاتم را در وب به اشتراک بگذارم

دیدگاه کاربران

2 پاسخ به “مرتب کردن آرایه در PHP”

  1. سعید گفت:

    با سلام. من آرایه ای دارم که وقتی با print_r اونو چاپ میکنم برای هر عنصر آرایم شماره مینویسه به ترتیب از ۰ تا آخر.
    از دستور array_unique استفاده کردم برای حذف عناصر تکراری و این باعث شد که الان با print_r آرایه را چاپ میکنم شماره هاش بهم بریزه و به ترتیب ۰ و ۱ و ۲ و …. نباشه . برای مرتب کردن شماره هاش باید چیکار کرد؟

    0

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

جدیدترین آموزش های آنلاین



دانلود رایگان (هدیه ویژه)

کتاب آموزش زبان برنامه نویسی PHP را دانلود و همین امروز یادگیری را شروع کن و به جمع برنامه نویسان ملحق شو ;)

دانلود رایگان کتاب

افزایش امنیت سایت

مجوزهای ما


logo-samandehi نماد اعتماد الکترونیک

بخش کاربران

هنوز عضو نیستید ؟ کلیک کنید

دانلود کتاب

عضویت در خبرنامه