PHP use() function for scope? PHP use() function for scope? php php

PHP use() function for scope?


use is not a function, it's part of the Closure syntax. It simply makes the specified variables of the outer scope available inside the closure.

$foo = 42;$bar = function () {    // can't access $foo in here    echo $foo; // undefined variable};$baz = function () use ($foo) {    // $foo is made available in here by use()    echo $foo; // 42}

For example:

$array = array('foo', 'bar', 'baz');$prefix = uniqid();$array = array_map(function ($elem) use ($prefix) {    return $prefix . $elem;}, $array);// $array = array('4b3403665fea6foo', '4b3403665fea6bar', '4b3403665fea6baz');


It is telling the anonymous function to make $connections (a parent variable) available in its scope.

Without it, $connections wouldn't be defined inside the function.

Documentation.