Re: Allow all callables to be called directly
| From: | Nikita Popov | Date: | Fri, 15 Mar 2013 15:11:08 +0000 |
| Subject: | Re: Allow all callables to be called directly | ||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-66648@lists.php.net to get a copy of this message | ||
On Fri, Mar 15, 2013 at 4:05 PM, Steve Clay <steve@mrclay.org> wrote:
> My subject was misleading. I didn't mean to suggest call_user_func() be
> removed, just be made unnecessary by direct call syntax.
>
> This should make the inconsistency clearer:
> http://3v4l.org/L8Yvq
>
> On 3/15/13 10:21 AM, Sebastian Krebs wrote:
>
>> You don't need to use it, if you don't like it.
>>
>
> I do need to use in case my $callable is an object callback.
>
I think you missed something. We already support that in 5.4. You can do
$foo = ['class', 'method']; $foo() and $foo = [$obj, 'method'];
$foo(). I
don't know why 'class::method' isn't supported, but I guess it's just a
legacy syntax that was superseded by the array notation and as such not
supported.
Nikita