在 PHP 中使用 vs include 作为导入语句

san*_*han 6 php

我有两个简单的文件:

文件1.php

<?php
namespace NM\data;
class MyClass
{
    static function myStaticFunction(){
        echo __NAMESPACE__." heheh";
    }
}
function myfunction()
{
    echo __FUNCTION__." some data";
}
const MYCONST = 1;
Run Code Online (Sandbox Code Playgroud)

和 file2.php:

<?php
// include 'file1.php';
use NM\data as NM;
class MyClass
{
}
function myfunction()
{
    echo __NAMESPACE__." heheh";
}
const MYCONST = 2;
echo NM\myfunction();
Run Code Online (Sandbox Code Playgroud)

文档说您可以use用作命名空间的导入命令。http://php.net/manual/en/language.namespaces.importing.php

我仅使用use. 对于要使用的其他一些命名空间,我必须使用include. 但是如果我使用include, than useis 只是一个别名。

是否可以仅使用use关键字导入命名空间?

dec*_*eze 6

但是如果我使用include, than useis 只是一个别名。

是的,仅此而已useuse只是别名命名空间。不多也不少。它与从文件中实际加载任何代码段是正交的。