PHP配列関数応用例

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2023-06-20 09:48:421636ブラウズ

PHP は一般的に使用される Web プログラミング言語であり、配列は最も重要なデータ型の 1 つです。 PHP には、配列データを処理するための強力な配列関数が多数あり、開発効率を大幅に向上させることができます。以下では、一般的に使用される PHP 配列関数をいくつか紹介し、実際の応用例をいくつか示します。

  1. array_sort

array_sort 関数は配列の並べ替えに使用され、複数の並べ替え方法が使用できます。以下に例を示します。

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;
}

この関数の引数は、配列、並べ替えのキー、および並べ替え順序 (デフォルトは昇順) です。

応用例: 特定のキー値に従って多次元配列を並べ替えます。

$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);

出力結果:

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

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

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

)
  1. array_filter

array_filter 関数は、指定された条件に従って配列内の要素をフィルター処理するために使用され、カスタマイズできます。フィルタリングルール。以下は例です:

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;
}

この関数のパラメータは配列とカスタム コールバック関数です。コールバック関数はブール値を返します。この値は、現在の要素を保持する必要があるかどうかを判断するために使用されます。

応用例: 配列内の偶数をフィルター処理します。

$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);

出力結果:

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

array_map 関数は、配列内の各要素にコールバック関数を適用し、新しい配列を返すために使用されます。 。以下は例です:

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;
}

この関数のパラメータは配列とカスタム コールバック関数です。コールバック関数は 1 つのパラメータを受け入れ、変換された値を返す必要があります。

応用例: 配列内の文字列を大文字に変換します。

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

出力結果:

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

array_reduce 関数を使用して、配列内の各要素に 1 つずつコールバック関数を適用します。最終的には縮小された値を返します。以下に例を示します。

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;
}

この関数のパラメータは、配列、カスタム コールバック関数、およびオプションの初期値です。

アプリケーションケース: 配列内のすべての値を追加します。

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

出力結果:

15

これらの実践的なアプリケーション ケースを通じて、PHP 配列関数の使用法をより深く理解できるようになり、プログラミング プロセス中に配列データをより便利に処理できるようになります。

以上がPHP配列関数応用例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。