You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For object rows, php-src array_column() reads declared visible properties only — it does not invoke __get. When the column is a private property exposed only through __get, Zend returns an empty array; the VM currently invokes magic and returns values.
Repro
Zend 8.2.32 (2026-07-26)
VM
array_column([new R('x'), new R('y')], 'name') with private $name + __get
[]
["x","y"]
Public constructor-promoted properties already match Zend.
Activity
PurHur commentedon Jul 26, 2026
claim: PHP Compiler STD Lib Advanced — batch (issues #23552, #23431, #23565, #23511, #23572, #23573)
Working #23552 first (array_walk object visibility + mangling; also covers #23431 done-when). Sequential PRs; merge before next.
Stdlib: array_column() skips non-public object props without __get (#…
PurHur commentedon Jul 26, 2026
Merged #23620
Verification: Zend + VM repro both
[];phpunit --filter array_column_private_get|ArrayColumnRuntimeShrinkOK (7 tests).Fix:
ArrayColumnJitHelperreads only public declared/dynamic properties; never__get.