<?php
namespace NS1 {
const CON1 = 100;
function f() {}
class C { }
interface I { }
trait T { }
}
namespace NS2 {
use \NS1\C, \NS1\I, \NS1\T;
class D extends C implements I
{
use T;
}
$v = \NS1\CON1; // explicit namespace still needed for constants
\NS1\f(); // explicit namespace still needed for functions
use \NS1\C as C2; // C2 is an alias for the class name \NS1\C
$c2 = new C2;
var_dump($c2);
}