echo MyClass::WhoAmI() . "\n";
//  App\Lib1\MyClass::WhoAmI
?>

<?php 
use App\Lib2;
require_once 'lib1.php';
require_once 'lib2.php';
header('Content-type: text/plain');
echo Lib2\MYCONST . "\n";
//  App\Lib1\MYCONST   ATTENTION !
echo Lib2\MyFunction() . "\n";
//  App\Lib2\MyFunction
echo Lib2\MyClass::WhoAmI() . "\n";
//  App\Lib2\MyClass::WhoAmI
?>

<?php 
use App\Lib1 as L;
use App\Lib2\MyClass as Obj;
header('Content-type: text/plain');
require_once 'lib1.php';
require_once 'lib2.php';
echo L\MYCONST . "\n";
// App\Lib1\MYCONST
echo L\MyFunction() . "\n";
// App\Lib1\MyFunction
echo L\MyClass::WhoAmI() . "\n";
// App\Lib1\MyClass::WhoAmI
echo Obj::WhoAmI() . "\n";
// App\Lib2\MyClass::WhoAmI
}
class MyClass
{
    static function WhoAmI()
    {
        return __METHOD__;
    }
}
echo MYCONST . "<br/>";
//    App\Lib1\MYCONST
var_dump(MYCONST) . "<br/>";
//    string(16) "App\Lib1\MYCONST"
echo MyFunction() . "<br/>";
//   App\Lib1\MyFunction
var_dump(MyFunction()) . "<br/>";
//   string(19) "App\Lib1\MyFunction"
echo "<br/>" . MyClass::WhoAmI() . "<br/>";
//    App\Lib1\MyClass::WhoAmI
var_dump(MyClass::WhoAmI()) . "<br/>";
//    string(24) "App\Lib1\MyClass::WhoAmI"
?>

<?php 
//  myapp.php
header('Content-type: text/plain');
require_once 'lib1.php';
// calling lib1.php
echo \App\Lib1\MYCONST . "\n";
echo \App\Lib1\MyFunction() . "\n";
echo \App\Lib1\MyClass::WhoAmI() . "\n";