Do use语句考虑了当前命名空间


Does use statement takes into account current namespace?

php中的use语句是否考虑了当前命名空间?

例如,如果

<?php
namespace Star;
use Sun;

这是否意味着,SunStar''Sun的别名?

这是否意味着,Sun是Star''Sun的别名?

没有。示例:

<?php
namespace Trash;
use B;
class A 
{
    function __construct() {
        $b = new B;
    }
}
namespace Trash;
class B {}
var_dump(new 'Trash'A);

此代码生成一个错误:

PHP Fatal error:  Class 'B' not found in /tmp/a.php on line 10