php array_filterで配列から空の値を除く

  • 作成日 2021.01.10
  • php
php array_filterで配列から空の値を除く

phpで、array_filterを使用して、配列から空の値を除くサンプルコードを記述してます。phpのバージョンは8.0です。

環境

  • OS  CentOS Linux release 8.0.1905 (Core)
  • php 8.0.0
  • nginx 1.14.1

array_filter使い方

array_filterを使用すれば、配列から空の値を除くことが可能です。

array_filter(配列,コールバック関数);

以下は、配列から空の値を除くサンプルコードとなります。

<?php

$array = ["a", "", "b", "", "c", ""];

function hoge($str)
{
    return strlen($str);
}

$result = array_filter($array,"hoge");

print_r($result);

実行結果

Array
(
    [0] => a
    [2] => b
    [4] => c
)

パフォーマンスは悪くなりますが、アロー関数を使用して記述することも可能です。

<?php

$array = ["a", "", "b", "", "c"];

$result = array_filter($array, fn($x) => strlen($x));

print_r($result);