PHP array function application case

WBOY
Release: 2023-06-20 09:58:02
Original
1575 people have browsed it

PHP is a commonly used Web programming language, and arrays are one of the most important data types. In PHP, there are many powerful array functions for processing array data, which can greatly improve development efficiency. The following will introduce some commonly used PHP array functions and give some practical application cases.

  1. array_sort

The array_sort function is used to sort arrays. There are multiple sorting methods available. Here is an example:

function array_sort($arr, $sort_key, $sort_order = SORT_ASC) {
    if (empty($arr) || !is_array($arr)) {
        return $arr;
    }
    $keys = array_keys($arr);
    if (!is_numeric($sort_key)) {
        $sort_key_arr = array();
        foreach ($keys as $k) {
            $sort_key_arr[$k] = $arr[$k][$sort_key];
        }
        $sort_key = $sort_key_arr;
    }
    array_multisort($sort_key, $sort_order, $keys);
    $sorted_arr = array();
    foreach ($keys as $k) {
        $sorted_arr[$k] = $arr[$k];
    }
    return $sorted_arr;
}
Copy after login

The arguments to this function are an array, a key to sort by, and a sort order (default is ascending).

Application case: Sort a multi-dimensional array according to a certain key value.

$students = array(
    array('name' => 'Mike', 'score' => 80),
    array('name' => 'John', 'score' => 90),
    array('name' => 'Alice', 'score' => 70)
);
$students_sorted = array_sort($students, 'score', SORT_DESC);
print_r($students_sorted);
Copy after login

Output result:

Array
(
    [1] => Array
        (
            [name] => John
            [score] => 90
        )

    [0] => Array
        (
            [name] => Mike
            [score] => 80
        )

    [2] => Array
        (
            [name] => Alice
            [score] => 70
        )

)
Copy after login
  1. array_filter

array_filter function is used to filter elements in the array according to specified conditions, and you can customize the filtering rules. The following is an example:

function array_filter_custom($arr, $func) {
    if (empty($arr) || !is_array($arr)) {
        return $arr;
    }
    $result = array();
    foreach ($arr as $key => $value) {
        if ($func($value, $key)) {
            $result[$key] = $value;
        }
    }
    return $result;
}
Copy after login

The parameters of this function are an array and a custom callback function. The callback function returns a bool value, which is used to determine whether the current element needs to be retained.

Application case: filter even numbers in an array.

$numbers = array(1, 2, 3, 4, 5, 6, 7, 8);
$even_numbers = array_filter_custom($numbers, function($value) {
    return $value % 2 == 0;
});
print_r($even_numbers);
Copy after login

Output result:

Array
(
    [1] => 2
    [3] => 4
    [5] => 6
    [7] => 8
)
Copy after login
  1. array_map

array_map function is used to apply a callback function to each element in the array and return a new array. The following is an example:

function array_map_custom($arr, $func) {
    if (empty($arr) || !is_array($arr)) {
        return $arr;
    }
    $result = array();
    foreach ($arr as $key => $value) {
        $result[$key] = $func($value);
    }
    return $result;
}
Copy after login

The parameters of this function are an array and a custom callback function. The callback function should accept one parameter and return the converted value.

Application case: Convert strings in an array to uppercase.

$strings = array('hello', 'world', 'php');
$strings_upper = array_map_custom($strings, function($value) {
    return strtoupper($value);
});
print_r($strings_upper);
Copy after login

Output result:

Array
(
    [0] => HELLO
    [1] => WORLD
    [2] => PHP
)
Copy after login
  1. array_reduce

array_reduce function is used to apply a callback function to each element in the array one by one, and finally returns A reduced value. Here is an example:

function array_reduce_custom($arr, $func, $initial = null) {
    if (empty($arr) || !is_array($arr)) {
        return $initial;
    }
    $result = $initial;
    foreach ($arr as $value) {
        $result = $func($result, $value);
    }
    return $result;
}
Copy after login

The parameters of this function are an array, a custom callback function, and an optional initial value.

Application case: Add all the values ​​in an array.

$numbers = array(1, 2, 3, 4, 5);
$sum = array_reduce_custom($numbers, function($carry, $item) {
    return $carry + $item;
});
echo $sum;
Copy after login

Output results:

15
Copy after login

Through these practical application cases, you can better understand the use of PHP array functions, thereby processing array data more conveniently during the programming process.

The above is the detailed content of PHP array function application case. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!