PHP | usort() Function

PHP comes with a number of built-in functions that are used to sort arrays in an easier way. Here, we are going to discuss a new function usort(). The usort() function in PHP sorts a given array by using a user-defined comparison function. This function is useful in case if we want to sort the array in a new manner. This function assigns new integral keys starting from zero to the elements present in the array and the old keys are lost.

Syntax:

boolean usort( $array, "function_name");

Parameters: This function accepts two parameters as shown in the above syntax and are described below:

  1. $array: This parameter specifies the array which u want to sort.
  2. function_name : This parameter specifies the name of a user-defined function which compares the values and sort the array specified by the parameter $array. This function returns an integer value based on the following conditions. If two arguments are equal, then it returns 0, If first argument is greater than second, it returns 1 and if first argument is smaller than second, it returns -1.

Return Value: This function returns the boolean type of value. It returns TRUE in case of success and FALSE in case of failure.

Below program illustrate the usort() function in PHP:

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
  
    // PHP program to illustrate usort() function
  
    // This is the user-defined function used to compare
    // values to sort the input array
    function comparatorFunc( $x, $y)
    {   
        // If $x is equal to $y it returns 0
        if ($x== $y)
            return 0;
      
        // if x is less than y then it returns -1
        // else it returns 1    
        if ($x < $y)
            return -1;
        else
            return 1;
    }
      
    // Input array
    $arr= array(2, 9, 1, 3, 5); 
  
    usort($arr, "comparatorFunc");
      
    print_r($arr);
  
?>

chevron_right


Output:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 5
    [4] => 9
)

Reference:
http://php.net/manual/en/function.usort.php

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : Akanksha_Rai

Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.