xref: /PHP-7.4/Zend/tests/dereference_013.phpt (revision 782352c5)
1--TEST--
2Testing array dereferencing on array returned from __call method
3--FILE--
4<?php
5
6error_reporting(E_ALL);
7
8class foo {
9	public $x = array(2);
10
11	public function __call($x, $y) {
12		if (count($this->x) == 1) {
13			$this->x[] = $y[0];
14		}
15		return $this->x;
16	}
17}
18
19$foo = new foo;
20
21$x = array(1);
22
23$foo->b($x)[1] = 3;
24
25var_dump($foo->b()[0]);
26var_dump($foo->b()[1]);
27var_dump($foo->b()[2]);
28
29?>
30--EXPECTF--
31int(2)
32array(1) {
33  [0]=>
34  int(1)
35}
36
37Notice: Undefined offset: %d in %s on line %d
38NULL
39