提问人:Shoaib Wani 提问时间:9/17/2023 更新时间:9/17/2023 访问量:35
我不能使用在 PHP [duplicate] 中的另一个命名空间中定义的函数
I cannot use a function that is defined in another namespace in PHP [duplicate]
问:
我正在使用自动加载来加载用命名空间定义的文件。我在命名空间中定义了一个重定向函数:
<?php
namespace sirJuni\Framework\Helper;
function redirect($url) {
header("Location: $url");
}
?>
项目结构如下:
- sirJuni\
- src\
- Helper\
- Functions.php // where the function is defined
然后我想做的是使用自动加载来加载此文件并使用重定向功能:
<?php
require_once "vendor/autoload.php";
use function sirJuni\Framework\Helper\redirect;
redirect("hello/hi");
?>
这给出了一个错误:调用未定义的函数
但是,如果我尝试使用上述项目中定义的其他类,我可以毫无问题地使用它们。只有当我尝试使用另一个命名空间中的函数时才会发生这种情况。sirJuni
答:
2赞
Koala Yeung
9/17/2023
#1
PHP 目前没有函数的自动加载功能。use 语句仅引用函数的命名空间名称。您仍然需要手动包含函数 .php,以便您可以在其中使用函数。
评论