(PHP 4 >= 4.0.6, PHP 5)
array_filter — Filtruje elementy przy użyciu funkcji zwrotnej
array_filter() wykonuje iterację dla każdej wartości z
tablicy wejście, przekazując tą wartość jako
parametr funkcji funkcja_zwrotna. Jeśli
funkcja_zwrotna zwróci wartość true, bieżąca
wartość zostanie wstawiona do tablicy wynikowej. Klucze tablicy zostają
zachowane.
Przykład #1 Przykład użycia array_filter()
<?php
function nieparzysta($var)
{
return($var & 1);
}
function parzysta($var)
{
return(!($var & 1));
}
$tablica1 = array ("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
$tablica2 = array (6, 7, 8, 9, 10, 11, 12);
echo "Nieparzyste:\n";
print_r(array_filter($tablica1, "nieparzysta"));
echo "Parzyste:\n";
print_r(array_filter($tablica2, "parzyste"));
?>
Powyższy przykład wyświetli:
Nieparzyste:
Array
(
[a] => 1
[c] => 3
[e] => 5
)
Parzyste:
Array
(
[0] => 6
[2] => 8
[4] => 10
[6] => 12
)
Użytkownicy nie mogą zmieniać filtrowanej tablicy z wnętrza funkcji zwrotnej. Jeśli tablica zostanie zmieniona, zachowanie tej funkcji array_filter() pozostaje nieokreślone.
Jeśli funkcja funkcja_zwrotna nie zostanie podana,
array_filter() usunie wszystkie elementy z tablicy
wejście, które odpowiadają FALSE. Zobacz
will remove all the entries of konwertowanie do typu
logicznego aby uzyskać więcej informacji.
Przykład #2 array_filter() bez parametru
funkcja_zwrotna
<?php
$tablica = array(
0 => 'foo',
1 => false,
2 => -1,
3 => null,
4 => ''
);
print_r(array_filter($tablica));
?>
Powyższy przykład wyświetli:
Array
(
[0] => foo
[2] => -1
)
Patrz także: array_map(), array_reduce() i array_walk().