gpt4 book ai didi

php - 禁用命名空间使用是某些类/文件

转载 作者:行者123 更新时间:2023-12-04 16:52:58 24 4
gpt4 key购买 nike

我正在为我的 CMS 开发一个插件系统,在我的 CMS 中,我经常使用命名空间。
我想要的是插件的开发人员不必在他们的插件中使用命名空间,因为对于以前没有使用过命名空间的开发人员来说,它们可能非常复杂。命名空间的主要问题是可以注册的事件。现在,插件开发者必须使用 use \events\Event; 加载一个 Event 类。 ,如果他们只是导入类,他们仍然无法使用 new Event();因为它使用命名空间。我想要的是他们可以使用 new Event(); (类本身将由 CMS 的自动加载器自动加载,因此不需要包含)。

所以基本上,我想在某些类或文件中禁用命名空间。所以new \events\Event();看起来就像 new Event();不删除 namespace events;来自 Event类(class)。

我希望我解释清楚,我不是解释这类东西的最佳人选。

最佳答案

不,换句话说,这行不通:

namespace Foo {
class Event {}
include('plugin.php'); // plugin.php cannot just do new Event();
}

这真的不应该是一个问题,因为你的 CMS 插件开发文档应该清楚命名空间的使用,插件开发人员只需要写一些类似的东西
use Plugin\Namespace\Events\MyEventType;

引用 MyEventType无需对其进行限定。当然,对插件作者的要求并不过分吗?

关于php - 禁用命名空间使用是某些类/文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15057168/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com