在PHP命名空间中(在带有namespace声明的文件内),是否可以定义全局函数?如果可以,如何实现?
<?php
namespace my_module;
# bunch of namespaced functions
# ...
# then I want to define a global function my_module()
# that is an alias to my_module\mymodule()
在PHP命名空间中(在带有namespace声明的文件内),是否可以定义全局函数?如果可以,如何实现?
<?php
namespace my_module;
# bunch of namespaced functions
# ...
# then I want to define a global function my_module()
# that is an alias to my_module\mymodule()
namespace my_module;
,而必须是namespace my_module { ... }
。
例如:
namespace my_module {
function module_function()
{
// code
}
}
namespace {
// global namespace.
function my_module()
{
// call your namespaced code
}
}
'included'文件中定义的函数具有全局作用域。
因此(我还没有验证),您可以将函数声明放在一个小文件中,然后将其包含进来。
这不完全符合问题的设想。
另一种方法是创建一个本地函数,在其中使用“global”关键字,并将闭包分配给全局变量-然后可以在任何地方“作为函数”使用它。 我肯定已经对普通变量做到了这一点,并且我认为它也适用于闭包。