Re: Re: Suggestion Method Constant
| From: | Michael Döhler | Date: | Sat, 14 Oct 2017 10:41:35 +0000 |
| Subject: | Re: Re: Suggestion Method Constant | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-100898@lists.php.net to get a copy of this message | ||
Hi,
maybe the introduce of a complete new syntax for method references would solve the issues? Maybe
coming back to e.g. "#" ("@" is still used for supressing errors,...)?
As mentions before all kinds can be simplified or? See:
MyClass#myMethod
#function
This should resolve in an object as mentioned before, in this object you have further informations,
e.g.
$ref = MyClass#myMethod;
$ref->isStatic();
...
I think an seperate solution for method/Funktion references is more realistic than changing core
things...
Greetings
Michael
> Am 14.10.2017 um 03:02 schrieb Andrea Faulds <ajf@ajf.me>:
>
> Hi Mathias,
>
> Mathias Grimm wrote:
>> I would like to suggest a method constant that could be used the same way
>> we use the ::class one
>>
>> I don't have a strong personal preference but it could be something like:
>>
>> MyController::myActionMethod::method, no sure about the internals but it
>> would be consistent with the one for the class.
>>
>> Cheers,
>
> I've long wanted to make constant lookups fall back to a closure of the
> correspondingly-named function, where one exists. so
strlen would
> resolve to a closure of strlen().
>
> Thing is that classes are weird. We sort of have three different things with sometimes-similar
> syntax: constants, methods and properties. foo::bar is a constant, foo::bar() is a function,
> $foo->bar() is a function, but $foo->bar is not a constant. So, if I want $foo->bar to
> resolve to a method, then $foo::$bar should too, even though that makes no sense. The PHP static
> property syntax is the bane of my existence.
>
> --
> Andrea Faulds
> https://ajf.me/
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>