xref: /PHP-8.1/Zend/tests/bug75420.13.phpt (revision 75a678a7)
1--TEST--
2Bug #75420.13 (Indirect modification of magic method argument)
3--FILE--
4<?php
5class Test implements ArrayAccess {
6    public function offsetExists($x): bool { $GLOBALS["obj"] = 24; return true; }
7    public function offsetGet($x): mixed { var_dump($x); return 42; }
8    public function offsetSet($x, $y): void { }
9    public function offsetUnset($x): void { }
10}
11
12$obj = new Test;
13$name = "foo";
14var_dump($obj[$name] ?? 12);
15var_dump($obj);
16?>
17--EXPECT--
18string(3) "foo"
19int(42)
20int(24)
21