مرتب سازی آرایه های چند متغیری و چند بعدی در php

۳ سال پیش(به روز شده در ۳ سال پیش) پی اچ پی(PHP)(توابع) ۰

تابع زیر مرتب سازی یک آرایه را با چندین مقدار برای هر ایندکس و آرایه چند بعدی را با اعمال محدودیت انجام میدهد. میتوانید با اندکی تغییر آنرا پیشرفته تر کنید!

function subval_sort($arr, $subkey, $lim = 0) {
    foreach ($arr as $k => $v) {
        $tmp[$k] = strtolower($v[$subkey]);
    }
 
    //arsort($tmp); مرتب سازی صعودی به نزولی
    asort($tmp);
 
    $i = 0;
    foreach ($tmp as $key => $val) {
        $res[] = $arr[$key];
        $i++;
 
        if ($i == $lim) {
            break;
        }
    }
 
    return $res;
}

مثال:

$arr = array(
    array('id' => 7, 'title' => 'text7'),
    array('id' => 6, 'title' => 'text6'),
    array('id' => 9, 'title' => 'text9'),
    array('id' => 1, 'title' => 'text1'));
$arr = subval_sort($arr, 'id', 2);
print_r($arr)

خروجی:

Array
(
    [0] => Array
        (
            [id] => 1
            [title] => text1
        )
    [1] => Array
        (
            [id] => 6
            [title] => text6
        )
)

منبع کمکی

صفحات پیشنهادی

تابع ایجاد پسورد یا رمز عبور خودکار(password generator)...

این تابع رمز عبور تصادفی ایجاد می کند. رمز عبورهای تصادفی مصارفی بسیاری مخصوصا در سیستمهای مدیریت کاربر دارند......

جدا سازی کلمات یک رشته با توجه به کاراکترهای جدا کننده(گسترش تابع explode)...

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

تابع چک کردن حجم رشته ورودی و محاسبه حجم آن...

تابع ()valid_size مقدار رشته ورودی را محاسبه کرده و سپس بررسی می کند که کمتر و برابر از رشته ورودی است که در صورت درستی شرط مقدار طول رشته به کیلوبایت و در غیر اینصورت مقدار False را بر می گرداند. fun...

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

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

نظر

نظری ثبت نشده است.