Re: [RFC] Allow "use( $longname as $alias)" syntax for closures declaration

From: Date: Fri, 13 Apr 2012 08:19:27 +0000
Subject: Re: [RFC] Allow "use( $longname as $alias)" syntax for closures declaration
References: 1 2  Groups: php.internals 
Request: Send a blank email to internals+get-59860@lists.php.net to get a copy of this message
Hi, 2012/4/13 Verbitsky Alexander <verbitsky_alexandr@mail.by>: > On 04/12/2012 06:38 PM, Laruence wrote: >> >> Hi: >>      I have made a RFC to allow user use T_AS in the closure declaration, >> like: >> >>      function () use($long as $l,&$long as $r) { >> >>      } >> >>      here is the RFC: https://wiki.php.net/rfc/useas >> >>      any ideas?  thanks >> > Closure is a functional literal that can pull with itself all variables > visible in current scope where it was created. For my opinion using keyword > 'use' is not necessary and i would have removed it. If you need different > name of variable maybe you need anonymous function. > You might be used to other language's scoping, but this is the way PHP works. Named function cannot do this, but anyway function FUNC($a, $b, $c) uses ($d, $e, $f) {} is like function FUNC($a, $b, $c) { global $d, $e, $f; } I would rather have this. function FUNC($a, $b, $c) uses ($d, $e, $f) {} Then it would be consistent with anonymous function. There are methods, so we should be careful though. Regards, -- Yasuo Ohgaki yohgaki@ohgaki.net

« previous php.internals (#59860) next »