方法: 1. コールバック関数を使用して配列内の要素をフィルタリングできる「array_filter()」関数を使用します。構文は「array_filter (array, callback function)」です。2. foreach を使用します。 () 関数は空のフィールドを見つけ、unset() 関数で削除します。
この記事の動作環境: Windows 10 システム、PHP バージョン 7.1、Dell G3 コンピューター
方法 1: array_filter 関数を使用する
array_filter() 関数は、コールバック関数を使用して配列内の要素をフィルターします。
この関数は、入力配列内の各キー値をコールバック関数に渡します。コールバック関数が true を返した場合、入力配列の現在のキー値が結果配列に返されます。配列キー名は変更されません。
array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] )
配列は必須です。フィルタリングする配列を指定します。
コールバック オプション。使用するコールバック関数を指定します。
フラグ オプション。コールバックによって受け取られるパラメータ形式を決定します。
方法 2: foreach を使用して配列要素を走査し、空の要素を見つけて削除します。
empty() 関数変数が空かどうかを確認するために使用されます。
unset() — 指定された変数を解放します。
void unset ( mixed $var [, mixed $... ] )
$var: 破棄する変数。
関数内の unset() の動作は、破棄する変数のタイプによって異なります。
例は次のとおりです:
<?php //一维数组 $entry = array( 0 => 'hello', 1 => true, 2 => -1, 3 => '1', 4 => '', ); //方法一:利用array_filter函数 print_r(array_filter($entry)); $entry1 = array( 0 => 'hello', 1 => true, 2 => -1, 3 => '1', 4 => '', ); //方法二:利用foreach遍历数组元素,找到空元素删除 foreach($entry1 as $k=>$v){ if(empty($v)){ unset($entry1[$k]); } } print_r($entry1); ?>
出力結果:
推奨学習: " PHP ビデオ チュートリアル >>
以上がPHPで1次元配列から空のフィールドを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。