While digging into the code recently, I found a performance penalty for 
asymmetric property setters that are not public. In testing, I found that 
`protected` and `private` setters were roughly 4x slower than their `public` 
counterparts.

Code speaks louder than words, so I drafted a PR that removes the performance 
penalty. The Summary talks about the implementation details more in depth and 
how to verify the performance. The change is +226/-65 LOC, so fairly small. It 
might be worth trying to put this fix into 8.6 yet.

https://github.com/php/php-src/pull/22709

Holly

Reply via email to