|
|
1.1 misho 1: --TEST--
2: Testing array dereference
3: --FILE--
4: <?php
5: error_reporting(E_ALL);
6:
7: function a() {
8: return array(1,array(5));
9: }
10: var_dump(a()[1][0]); // int(5)
11:
12: function b() {
13: return array();
14: }
15: var_dump(b()[0]); // Notice: Undefined offset: 0
16:
17: class foo {
18: public $y = 1;
19:
20: public function test() {
21: return array(array(array('foobar')));
22: }
23: }
24:
25: function c() {
26: return array(new foo);
27: }
28: var_dump(c()[0]->y); // int(1)
29:
30: function d() {
31: $obj = new foo;
32: return $obj->test();
33: }
34: var_dump(d()[0][0][0][3]); // string(1) "b"
35:
36: function e() {
37: $y = 'bar';
38: $x = array('a' => 'foo', 'b' => $y);
39: return $x;
40: }
41: var_dump(e()['b']); // string(3) "bar"
42:
43: ?>
44: --EXPECTF--
45: int(5)
46:
47: Notice: Undefined offset: 0 in %s on line %d
48: NULL
49: int(1)
50: string(1) "b"
51: string(3) "bar"