[php-src] Issue #9998: override class attribute/property

From: Date: Fri, 25 Nov 2022 03:28:36 +0000
Subject: [php-src] Issue #9998: override class attribute/property
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-242900@lists.php.net to get a copy of this message
Issue: https://github.com/php/php-src/issues/9998 Author: SVGAnimate ### Description The following code: ```php <?php class StdStruct { private $val = "val1"; public function foo() { echo $this->val, PHP_EOL;} } class MyStruct extends StdStruct { public $val = "val2"; public function faa() { echo $this->val, PHP_EOL;} } $my = new MyStruct(); $my->val = "val3"; $my->foo(); $my->faa(); ``` Resulted in this output: ``` val1 val3 ``` Change private to protected : ```php <?php class StdStruct { protected $val = "val1"; public function foo() { echo $this->val, PHP_EOL;} } class MyStruct extends StdStruct { public $val = "val2"; public function faa() { echo $this->val, PHP_EOL;} } $my = new MyStruct(); $my->val = "val3"; $my->foo(); $my->faa(); ``` Resulted in this output: ``` val3 val3 ``` But I expected this output instead: ``` val1 val3 ``` Do you agree with the expected result ? ### PHP Version PHP 8.0.12 ### Operating System _No response_

« previous php.bugs (#242900) next »