फ़ंक्शन array_multisort

फ़ंक्शन array_multisort एक साथ कई ऐरे को सॉर्ट करने की अनुमति देता है या एक या अनेक मानदंडों के आधार पर मल्टीडायमेंशनल ऐरे की जटिल सॉर्टिंग करता है।

सिंटैक्स

phparray_multisort(
  array1, 
  [sorting_order = SORT_ASC], 
  [sorting_type = SORT_REGULAR], 
  array2, 
  array3, 
  ...
);

पैरामीटर sorting_order

पैरामीटर sorting_order सॉर्टिंग की दिशा निर्धारित करता है। इसके मान इस प्रकार हैं:

पैरामीटर विवरण
SORT_ASC आरोही क्रम में सॉर्टिंग (डिफ़ॉल्ट मान)।
SORT_DESC अवरोही क्रम में सॉर्टिंग।

पैरामीटर sorting_type

पैरामीटर sorting_type तत्वों की तुलना का प्रकार निर्धारित करता है। इसके मान इस प्रकार हैं:

पैरामीटर विवरण
SORT_REGULAR तत्वों की सामान्य तुलना (डिफ़ॉल्ट रूप से)।
SORT_NUMERIC तत्वों की संख्यात्मक तुलना।
SORT_STRING तत्वों की स्ट्रिंग तुलना।
SORT_LOCALE_STRING वर्तमान लोकेल को ध्यान में रखते हुए स्ट्रिंग तुलना।
SORT_NATURAL स्ट्रिंग्स की प्राकृतिक सॉर्टिंग (जैसे फ़ाइल एक्सप्लोरर में)।
SORT_FLAG_CASE केस-इनसेंसिटिव सॉर्टिंग के लिए SORT_STRING या SORT_NATURAL के साथ संयुक्त।

उदाहरण

पैरामीटर निर्दिष्ट करते हुए दो ऐरे की सॉर्टिंग:

php<?php
  $numbers = [10, 2, 15, 4];
  $letters = ['b', 'a', 'd', 'c'];
  array_multisort(
    $numbers, SORT_DESC, SORT_NUMERIC,
    $letters, SORT_ASC, SORT_STRING
  );
  print_r($numbers);
  print_r($letters);
?>

कोड निष्पादन का परिणाम:

php[15, 10, 4, 2]
['d', 'b', 'c', 'a']

उदाहरण

दिए गए फ़ील्ड के आधार पर मल्टीडायमेंशनल ऐरे की सॉर्टिंग:

php<?php
  $data = [
    ['name' => 'John', 'age' => 25],
    ['name' => 'Alice', 'age' => 22],
    ['name' => 'Bob', 'age' => 30]
  ];
  
  $ages = array_column($data, 'age');
  array_multisort($ages, SORT_ASC, $data);
  print_r($data);
?>

कोड निष्पादन का परिणाम:

php[
  ['name' => 'Alice', 'age' => 22],
  ['name' => 'John', 'age' => 25],
  ['name' => 'Bob', 'age' => 30]
]

उदाहरण

दो दिए गए फ़ील्ड के आधार पर मल्टीडायमेंशनल ऐरे की सॉर्टिंग:

php<?php
  $data = [
    ['name' => 'John', 'age' => 25],
    ['name' => 'alice', 'age' => 22],
    ['name' => 'Bob', 'age' => 30]
  ];
  
  $names = array_column($data, 'name');
  $ages = array_column($data, 'age');
  array_multisort(
    $names, SORT_ASC, SORT_STRING | SORT_FLAG_CASE,
    $ages, SORT_DESC,
    $data
  );
  print_r($data);
?>

कोड निष्पादन का परिणाम:

php[
  ['name' => 'alice', 'age' => 22],
  ['name' => 'Bob', 'age' => 30],
  ['name' => 'John', 'age' => 25]
]

उदाहरण

स्ट्रिंग्स की प्राकृतिक सॉर्टिंग:

php<?php
  $files = ['file1.txt', 'file10.txt', 'file2.txt'];
  array_multisort($files, SORT_ASC, SORT_NATURAL);
  print_r($files);
?>

कोड निष्पादन का परिणाम:

php['file1.txt', 'file2.txt', 'file10.txt']

उदाहरण

केस-इनसेंसिटिव सॉर्टिंग:

php<?php
  $words = ['Apple', 'banana', 'cherry', 'apricot'];
  array_multisort($words, SORT_ASC, SORT_STRING | SORT_FLAG_CASE);
  print_r($words);
?>

कोड निष्पादन का परिणाम:

php['Apple', 'apricot', 'banana', 'cherry']

यह भी देखें

  • फ़ंक्शन sort,
    जो तत्वों के आरोही क्रम में सॉर्ट करता है
  • फ़ंक्शन rsort,
    जो तत्वों के अवरोही क्रम में सॉर्ट करता है
  • फ़ंक्शन ksort,
    जो कुंजियों के आरोही क्रम में सॉर्ट करता है
  • फ़ंक्शन krsort,
    जो कुंजियों के अवरोही क्रम में सॉर्ट करता है
  • फ़ंक्शन asort,
    जो कुंजियों को संरक्षित करते हुए तत्वों के आरोही क्रम में सॉर्ट करता है
  • फ़ंक्शन arsort,
    जो कुंजियों को संरक्षित करते हुए तत्वों के अवरोही क्रम में सॉर्ट करता है
  • फ़ंक्शन natsort,
    जो प्राकृतिक तरीके से सॉर्ट करता है
  • फ़ंक्शन natcasesort,
    जो केस-इनसेंसिटिव प्राकृतिक तरीके से सॉर्ट करता है
  • फ़ंक्शन usort,
    जो कॉलबैक के आधार पर सॉर्ट करता है
  • फ़ंक्शन uksort,
    जो कॉलबैक के आधार पर कुंजियों को सॉर्ट करता है
  • फ़ंक्शन uasort,
    जो कॉलबैक के आधार पर कुंजियों को संरक्षित करते हुए सॉर्ट करता है