1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00
Files
archived-php-src/Zend/tests/magic_methods/bug30889.phpt
DanielEScherzer d22abca488 Zend/tests: organize some tests with sub directories (5) (#17800)
Second pass through `Zend/tests/bug*` to organize the tests.

Move tests to existing sub directories, and create some new sub directories:
* `ArrayAccess`
* `autoload`
* `clone`
* `serialize` (also covers `unserialize()`)
* `switch`

Work towards GH-15631
2025-02-14 11:49:14 +00:00

32 lines
632 B
PHP

--TEST--
Bug #30889 (Conflict between __get/__set and ++ operator)
--FILE--
<?php
class overloaded
{
private $values;
function __construct()
{
$this->values = array('a' => 0);
}
function __set($name, $value)
{
print "set $name = $value ($name was ".$this->values[$name].")\n";
$this->values[$name] = $value;
}
function __get($name)
{
print "get $name (returns ".$this->values[$name].")\n";
return $this->values[$name];
}
}
$test = new overloaded();
$test->a++; // __get(), then __set()
++$test->a;
?>
--EXPECT--
get a (returns 0)
set a = 1 (a was 0)
get a (returns 1)
set a = 2 (a was 1)