ユアスク by みんなシステムズ

MENU

PHPのarray_filterメソッドの使い方

2023/05/11

はじめに

みんシスのRIです。今日はarray_filterメソッドについて簡単な説明をします!
プログラミング言語PHPには便利な配列操作のための関数が数多くあります。その中でも、今日はarray_filter関数について詳しく解説します。この関数を理解し、活用することで配列の操作がよりスムーズになります。

array_filterとは

array_filterはPHPの組み込み関数の1つで、配列の各要素に対してテストを行い、テストに合格した(つまり、テスト関数がtrueを返した)要素だけを新しい配列にまとめて返す関数です。

基本的な使い方は次のようになります。

$result = array_filter($array, 'callback_function');

ここで、$arrayは処理対象の配列、callback_functionは各要素に対して実行するコールバック関数を指定します。

array_filterの基本的な使用例

例1: 奇数だけを抽出する

$numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$odds = array_filter($numbers, function($number) {
    return $number % 2 !== 0;
});

print_r($odds);  // 結果: Array ( [0] => 1 [2] => 3 [4] => 5 [6] => 7 [8] => 9 )

この例では、配列$numbersの各要素(数値)に対して$number % 2 !== 0というテストを行い、その結果(trueまたはfalse)に応じて要素を新しい配列$oddsに追加しています。結果として、奇数だけが新しい配列に含まれます。

例2: 空の要素を削除する

$words = ['apple', '', 'banana', '', 'cherry'];
$filtered = array_filter($words);

print_r($filtered);  // 結果: Array ( [0] => apple [2] => banana [4] => cherry )

まとめ

以上、PHPのarray_filter関数について解説しました。この関数を使えば、条件に合う要素だけを出した新しい配列を簡単に作成することができます。また、コールバック関数を指定しない場合には、「空でない」要素だけを抽出するという便利な挙動も覚えておきましょう。