0

I've a question. In array_filter:

$min = 4;
$arr = array(1,2,3,4,5,6,7);
$arr = array_filter($arr,function($e) {
    return $e <= 4;
});
var_dump($arr);

It works.

If i use a

$min = 4;
$arr = array(1,2,3,4,5,6,7);
$arr = array_filter($arr,function($e) {
    return $e <= $min;//$min variable gives error
});
var_dump($arr);

How to put correctly, that it see can the $min variable in callback?

Thank you for hints

user1835249
  • 55
  • 1
  • 6

2 Answers2

7
$min = 4;
$arr = array(1,2,3,4,5,6,7);
$arr = array_filter($arr,function($e) use($min) {
    return $e <= $min;
});
var_dump($arr);

note: int PHP 5.4 you can use $this in closures

silly
  • 7,789
  • 2
  • 24
  • 37
0

$min = 4;

$arr = array(1,2,3,4,5,6,7);

$arr = array_filter($arr,function($e)

{

global $min;

return $e <= $min;//$min variable gives error

});

som
  • 4,650
  • 2
  • 21
  • 36