Funcții ale tablourilor (Array)
PHP Manual

array_filter

(PHP 4 >= 4.0.6, PHP 5)

array_filterFiltrează elementele unui tablou utilizând o funcție de apel invers

Descrierea

array array_filter ( array $input [, callable $callback = "" ] )

Iterează prin fiecare valoare în tabloul input transmițând-o funcției callback. Dacă funcția callback întoarce true, valoarea curentă din input este întoarsă în tabloul rezultant. Cheile tabloului sunt păstrate.

Parametri

input

Tabloul în care se iterează

callback

Funcția de apel invers utilizată

Dacă nu este furnizată nici o funcție callback, toate înregistrările din input egale cu FALSE (vedeți convertarea în boolean) vor fi eliminate.

Valorile întoarse

Întoarce tabloul filtrat.

Exemple

Example #1 Exemplu array_filter()

<?php
function odd($var)
{
    
// întoarce true dacă numărul întreg transmis este impar
    
return($var 1);
}

function 
even($var)
{
    
// întoarce true dacă numărul întreg transmis este par
    
return(!($var 1));
}

$array1 = array("a"=>1"b"=>2"c"=>3"d"=>4"e"=>5);
$array2 = array(6789101112);

echo 
"Odd :\n";
print_r(array_filter($array1"odd"));
echo 
"Even:\n";
print_r(array_filter($array2"even"));
?>

Exemplul de mai sus va afișa:

Odd :
Array
(
    [a] => 1
    [c] => 3
    [e] => 5
)
Even:
Array
(
    [0] => 6
    [2] => 8
    [4] => 10
    [6] => 12
)

Example #2 array_filter() fără callback

<?php

$entry 
= array(
             
=> 'foo',
             
=> false,
             
=> -1,
             
=> null,
             
=> ''
          
);

print_r(array_filter($entry));
?>

Exemplul de mai sus va afișa:

Array
(
    [0] => foo
    [2] => -1
)

Note

Precauţie

Dacă tabloul este modificat în funcția de apel invers (de ex. un element este adăugat, eliminat sau desetat) comportamentul acestei funcții este nedefinit.

Vedeți de asemenea


Funcții ale tablourilor (Array)
PHP Manual