PROGRAMMING

 
REMEMBERS




Last update:   29-10-2021

Closures

Allow the creation of functions which have no specified name. Also known as closures.
 
preg_match("/-([a-z])/", "Hello-world", $match);
echo $match[1]; // output w

echo preg_replace_callback('/-([a-z])/', function($match) {
    return " " . strtoupper($match[1]);
}, 'Hello-world');  // outputs: Hello World

Declaration

! Be aware of the ; after function declaration. Without it, the following code will output a Notice (Parse error syntax)
 
$a = function($var) {
    $b = "Hello $var";
    return $b;
};  // ; at the end

echo $a('World'); // outputs: Hello World

Callbacks

Anonymous functions are useful when using callback functions. Functions like array_filter or array_map do:
 
$data = array(0, 3, 10);
$data = array_filter ($data, function($x) { 
    return $x % 2 == 0;  // even
});  
var_dump($data); // 0 => 0  / 2 => 10
 
$data = array(0, 3, 10);
$data = array_map(function ($x) { 
    return $x*$x; 
}, $data); // square
var_dump($data); // [0, 9, 100]

Questions    
Reference

        A B C D E F
🔔
1/2