PHP array_filter() 函數詳解

定義

array_filter - 用回調函數過濾數組中的元素php


描述

array_filter ( array $array [, callable $callback [, int $flag = 0 ]] ) : array

依次將 array 數組中的每一個值傳遞到 callback 函數。若是 callback 函數返回 TRUE,則 array 數組的當前值會被包含在返回的結果數組中。
數組的鍵名保留不變。
若是沒有提供 callback 函數, 將刪除 array 中全部等值爲 FALSE 的元素。
參數 flag 決定callback接收的參數形式:
ARRAY_FILTER_USE_KEY - 接受鍵名做爲的惟一參數
ARRAY_FILTER_USE_BOTH - 同時接受鍵名和鍵值數組


示例一

<?php
  function even($var)
  {
      // returns whether the input integer is even
      return(!($var & 1));
  }
  $array = array(6, 7, 8, 9, 10, 11, 12);

  echo "Even:\n";
  print_r(array_filter($array, "even"));
?>

將輸出:函數

Even:
Array
(
    [0] => 6
    [2] => 8
    [4] => 10
    [6] => 12
)

示例二

不使用回調函數code


<?php
  $entry = array(
               0 => 'foo',
               1 => false,
               2 => -1,
               3 => null,
               4 => ''
            );
  print_r(array_filter($entry));
?>

將輸出:input

Array
(
    [0] => foo
    [2] => -1
)
相關文章
相關標籤/搜索