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

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

مرتب سازی در PHP - آزمون آنلاین و چهار گزینه ای پی اچ پی

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

مرتب سازی آرایه ها در PHP

امروز می خوایم در مورد یه موضوع خیلی جذاب و کاربردی صحبت کنیم که هر برنامه نویس PHP باید باهاش آشنا باشه: توابع مرتب سازی آرایه ها.

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

مرتب سازی در PHP  - آزمون آنلاین و چهار گزینه ای پی اچ پی


تابع sort(): مرتب سازی به روش طبیعی و صعودی

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

فکر کن یه لیست از اعداد یا اسم ها داری و می خوای مرتبشون کنی. sort() دقیقا برای همین کار ساخته شده.


$numbers = array(4, 2, 8, 1, 5);
sort($numbers);
print_r($numbers);
// خروجی: Array ( [0] => 1 [1] => 2 [2] => 4 [3] => 5 [4] => 8 )

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


تابع rsort(): مرتب سازی به روش نزولی

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


$numbers = array(4, 2, 8, 1, 5);
rsort($numbers);
print_r($numbers);
// خروجی: Array ( [0] => 8 [1] => 5 [2] => 4 [3] => 2 [4] => 1 )

دیدم که می گی آسونه، بریم سراغ بعدی.


تابع asort(): مرتب سازی با حفظ کلیدها

یکی از چالش های مرتب سازی با sort() و rsort() اینه که کلیدهای آرایه رو دوباره سازی می کنن. اگه کلیدهای آرایه برات مهمه، باید از asort() استفاده کنی. این تابع بر اساس مقدار مرتب می کنه، اما کلیدها سر جاشون می مونن و بهم نمی ریزن.


$age = array("ali" => "35", "hassan" => "37", "reza" => "43");
asort($age);
print_r($age);
// خروجی: Array ( [ali] => 35 [hassan] => 37 [reza] => 43 )

تابع ksort(): مرتب سازی بر اساس کلیدها

گاهی وقت ها لازم داری آرایه رو بر اساس کلیدهاش مرتب کنی، نه مقدارهاش. اینجا ksort() وارد صحنه می شه. این تابع کلیدها رو مرتب می کنه و مقدارهای مربوط به هر کلید هم باهاش جابجا می شن.


$age = array("reza" => "43", "hassan" => "37", "ali" => "35");
ksort($age);
print_r($age);
// خروجی: Array ( [ali] => 35 [hassan] => 37 [reza] => 43 )

تابع usort(): مرتب سازی سفارشی

این یکی دیگه تهِ مرتب سازیه! اگه هیچ کدوم از توابع بالا کارت رو راه ننداخت، یا یه شرط خاص برای مرتب سازی داری، باید از usort() استفاده کنی.

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


function mySortFunction($a, $b) {
  if (strlen($a) == strlen($b)) {
    return 0;
  }
  return (strlen($a) < strlen($b)) ? -1 : 1;
}

$a = array("11", "222", "3", "4444");
usort($a, "mySortFunction");
print_r($a);
// خروجی: Array ( [0] => 3 [1] => 11 [2] => 222 [3] => 4444 )

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


جدول مقایسه توابع مرتب سازی

برای اینکه بتونی راحت تر تفاوت این توابع رو بفهمی، یه جدول آماده کردم:

تابع نوع مرتب سازی حفظ کلیدها
sort() صعودی بر اساس مقدار خیر
rsort() نزولی بر اساس مقدار خیر
asort() صعودی بر اساس مقدار بله
ksort() صعودی بر اساس کلید بله
usort() سفارشی بله

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

چرا خواب می بینم ؟ از لحاظ علمی و روانشناسی

چرا خواب می بینم ؟ از لحاظ علمی و روانشناسی

رویا به معنی تصاویر ، افکار و احساساتی است که در طول خواب تجربه می کنیم.خواب هایی که...

چطور برای 40 تا 50 نفر شله زرد نذری مجلسی درست کنم؟-بسیار دقیق

چطور برای 40 تا 50 نفر شله زرد نذری مجلسی درست کنم؟-بسیار دقیق

چطور برای 40 تا 50 نفر شله زرد نذری مجلسی درست کنم؟-بسیار دقیق طرز تهیه شله زرد نذری...

بهترین مرکز مشاوره مواد شیمیایی و اسید شویی

بهترین مرکز مشاوره مواد شیمیایی و اسید شویی

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

چطور برندهای مرغوب آرایشی و بهداشتی را تشخیص دهیم؟

چطور برندهای مرغوب آرایشی و بهداشتی را تشخیص دهیم؟

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