Home >Backend Development >PHP Problem >Modify array sorting php

Modify array sorting php

PHPz
PHPzOriginal
2023-05-24 19:37:37436browse

PHP is a widely used programming language. It provides many powerful tools and function libraries, making it very convenient for us to deal with array sorting. In this article, we will introduce how to modify array sorting using PHP.

In PHP, we can use the sort() function to sort the array in ascending order. For example:

$numbers = array(3, 1, 4, 1, 5, 9, 2, 6, 5, 3);
sort($numbers);
print_r($numbers);

The output result is:

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

It can be seen from the result that the array $numbers has been sorted in ascending order.

We can also use the rsort() function to sort the array in descending order. For example:

$numbers = array(3, 1, 4, 1, 5, 9, 2, 6, 5, 3);
rsort($numbers);
print_r($numbers);

The output result is:

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

The result shows that the array $numbers has been sorted in descending order.

If we need to sort the associative array by key name, we can use the ksort() function to sort in ascending order and the krsort() function to sort in descending order. For example:

$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
ksort($age);
print_r($age);

The output result is:

Array
(
    [Ben] => 37
    [Joe] => 43
    [Peter] => 35
)

You can see that the $age array has been sorted in ascending order according to the key name.

In addition to these default array sorting functions, we can also use custom sorting functions. This function defines a rule for comparing array elements. This function needs to accept two parameters and then returns -1, 0 or 1, indicating the order of the two values. For example, we can sort based on the length of array elements.

The following is an example of implementing a custom sorting function:

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

$fruits = array("apple", "banana", "orange", "pear", "watermelon");
usort($fruits, "cmp");
print_r($fruits);

The output result is:

Array
(
    [0] => pear
    [1] => apple
    [2] => banana
    [3] => orange
    [4] => watermelon
)

As you can see, the $fruits array has been sorted according to the length of the elements.

This article introduces how to use PHP to modify array sorting. Through these sorting functions and custom sorting functions, we can easily sort arrays to meet different needs.

The above is the detailed content of Modify array sorting php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:PHP table is not visibleNext article:PHP table is not visible