Y
Hacker News
new
|
ask
|
show
|
jobs
by
joe_hoyle
133 days ago
The problem is that first class callables actually makes a new object wrapper for each reference, so trim(…) != trim(…). (It can be true in some cases, it depends if the memory is freed for the first reference).
1 comments
pwdisswordfishy
133 days ago
And how is Closure::fromCallable('trim') recommended by the article any better in that respect?
$ php8.4 -r "var_dump(Closure::fromCallable('trim') === Closure::fromCallable('trim'));" bool(false)
link
joe_hoyle
133 days ago
It is not better, this is a problem with the first-class callable syntax altogether.
link