xref: /PHP-5.4/Zend/tests/ns_057.phpt (revision 610c7fbe)
1--TEST--
2057: Usage of 'namespace' in compound names (inside namespace)
3--FILE--
4<?php
5namespace Test\ns1;
6
7const C = "const ok\n";
8
9function foo() {
10	return "func ok\n";
11}
12
13class foo {
14	const C = "const ok\n";
15	const C2 = namespace\C;
16	static $var = "var ok\n";
17	function __construct() {
18		echo "class ok\n";
19	}
20	static function bar() {
21		return "method ok\n";
22	}
23}
24
25function f1($x=namespace\C) {
26	return $x;
27}
28function f2($x=namespace\foo::C) {
29	return $x;
30}
31
32function f3(namespace\foo $x) {
33	return "ok\n";
34}
35
36echo namespace\C;
37echo namespace\foo();
38echo namespace\foo::C;
39echo namespace\foo::C2;
40echo namespace\foo::$var;
41echo namespace\foo::bar();
42echo namespace\f1();
43echo namespace\f2();
44echo namespace\f3(new namespace\foo());
45echo namespace\unknown;
46?>
47--EXPECTF--
48const ok
49func ok
50const ok
51const ok
52var ok
53method ok
54const ok
55const ok
56class ok
57ok
58
59Fatal error: Undefined constant 'Test\ns1\unknown' in %sns_057.php on line %d