On Fri, Apr 13, 2012 at 4:19 PM, Yasuo Ohgaki <yohg...@ohgaki.net> wrote:
> Hi,
>
> 2012/4/13 Verbitsky Alexander <verbitsky_alexa...@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.
closure was not the way PHP works.  but now,  it has be introduced in PHP
>
> 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; }

they do are different,  previous is a lexical variable.  that means it
equal to the value when the closure is created.

the latter is the value when it was called.

thanks
>
> 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
> yohg...@ohgaki.net
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>



-- 
Laruence  Xinchen Hui
http://www.laruence.com/

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to