1--TEST-- 2Calling hook method with parent::$prop::get() from reflection 3--FILE-- 4<?php 5 6class A { 7 public $prop; 8} 9 10class B extends A { 11 public $prop { 12 get { 13 echo __FUNCTION__, "\n"; 14 return parent::$prop::get(); 15 } 16 set { 17 echo __FUNCTION__, "\n"; 18 parent::$prop::set($value); 19 } 20 } 21} 22 23$b = new B(); 24(new ReflectionProperty(B::class, 'prop'))->getHook(PropertyHookType::Set)->invoke($b, 43); 25var_dump((new ReflectionProperty(B::class, 'prop'))->getHook(PropertyHookType::Get)->invoke($b)); 26 27?> 28--EXPECT-- 29$prop::set 30$prop::get 31int(43) 32