1

use关键字的意义是什么,如下面use FooInterface;代码所示

namespace Vendor\Package;

use FooInterface;
use BarClass as Bar;
use OtherVendor\OtherPackage\BazClass;

class Foo extends Bar implements FooInterface
{
    public function sampleFunction($a, $b = null)
    {
        if ($a === $b) {
            bar();
        } elseif ($a > $b) {
            $foo->bar($arg1);
        } else {
            BazClass::bar($arg2, $arg3);
        }
    }

    final public static function bar()
    {
        // method body
    }
}

这不是多余的吗?

4

1 回答 1

3

如果没有该子句,您的代码将如下所示:

class Foo extends Bar implements \FooInterface
                                 ^

注意到前面的反斜杠了吗?它是必需的,因为您在Vendor\Package命名空间中,因此对全局命名空间的任何引用都必须以 a 开头,\除非它被导入。

这在手册中也有说明。

于 2013-08-22T05:11:43.303 回答