在非类文件中使用命名空间


Using namespaces in non-class files

我正在用PHP创建一个函数文件,为此我想使用一个名称空间。

名称空间是包含所有文件,还是只包含某些部分?

例如:

namespace Functions;
function foo()
{
    return "foo";
}
function bar()
{
    return "bar";
}

或者是:

namespace Functions;
function foo()
{
    return "foo";
}
namespace Functions;
function bar()
{
    return "bar";
}

显示为两个示例的一个文件

您可以为此创建静态类:

namespace helpers;
class Hello
{
    private static $greeting = 'Hello';
    private static $initialized = false;
    private static function initialize()
    {
        if (self::$initialized)
            return;
        self::$greeting .= ' There!';
        self::$initialized = true;
    }
    public static function greet()
    {
        self::initialize();
        echo self::$greeting;
    }
}

如果不使用OOP,哪些命名空间是的一部分