php-src/Zend/tests/property_hooks/recursion.phpt
Ilija Tovilo 780a8280d2
[RFC] Property hooks (#13455)
RFC: https://wiki.php.net/rfc/property-hooks

Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
2024-07-14 11:55:03 +02:00

36 lines
597 B
PHP

--TEST--
Recursion behavior of property hooks
--FILE--
<?php
class Test {
public int $prop {
get { return $this->prop * 2; }
set { $this->prop = $value * 2; }
}
// Edge-case where recursion happens via isset().
public int $prop2 {
get { return isset($this->prop2); }
set { }
}
}
$test = new Test;
$test->prop = 10;
var_dump($test->prop);
var_dump(isset($test->prop));
var_dump(isset($test->prop2));
var_dump($test);
?>
--EXPECT--
int(40)
bool(true)
bool(true)
object(Test)#1 (1) {
["prop"]=>
int(20)
["prop2"]=>
uninitialized(int)
}