summaryrefslogtreecommitdiff
path: root/Zend/tests/constant_expressions_arrays.phpt
blob: 061fcc6a928b367ea15a949045606482eaefab0d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
--TEST--
Constant expressions with arrays
--FILE--
<?php
const a = [1,2,[3,[4]]];
const b = a[0];
const c = a[2][0];
const d = a[2];
const e = ["string" => [1]]["string"][0];

var_dump(b, c, e);

function test ($a = d[1][0]) {
	var_dump($a);
}

test();

class foo {
	const bar = [1][0];
}

var_dump(foo::bar);

var_dump(a); // Eventually allow that later with array dereferencing of constants

?>
--EXPECTF--
int(1)
int(3)
int(1)
int(4)
int(1)

Fatal error: Arrays are not allowed in constants at run-time in %s on line %d