مرتب سازی آرایه های چند متغیری و چند بعدی در 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
        )
)

منبع کمکی

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

تابع تبدیل تاریخ میلادی به شمسی...

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

توابع رمزگذاری و رمزگشایی یک رشته با خروجی‌های متفاوت...

دو تابع encrypt و decrypt به ترتیب مربوط به رمزگذاری و رمزگشایی می باشند. اما تفاوتی که با حالت معمول دارند این است که خروجی تابع encrypt برای یک مقدار با هر بار فراخوانی متفاوت است. این ویژگی قطعا در...

جدا کردن 3 رقم 3 رقم اعداد جهت نمایش مقادیر پولی در php...

هر چند در php تابعی بنام number_format جهت انجام اینکار وجود دارد اما درج تابع دستی آن نیز خالی از لطف نیست....

توابع next , prev , end , current , reset در php...

این توابع مرتبط با آرایه ها هستند و وظیفه آنها اشاره به مقادیر آنهاست. در آرایه هایی که اندیسها یا کلیدهای آنها غیر عددی است , دسترسی به مقدار کمی متفاوت تر خواهد بود. هر چند که این توابع برای اندیسها...

نظر

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