PHP 尝试推送实例但在本地文件夹中查找它
PHP trying to push an instance but looking for it in the local folder
如果这个 post 的标题措辞不明显,我明白出了什么问题,但我不知道用什么词汇来表达问题以获得答案google.
实际上它归结为我有一个 php main class 正在注册一个事件侦听器:
class Main extends PluginBase {
public function onEnable(){
$this->getServer()->getLogger()->info("Loading all the things");
$pluginManager = $this->getServer()->getPluginManager();
$pluginManager->registerEvents(new SimpleOverrides($this), $this);
$pluginManager->registerEvents(new AntiGreifListeners($this), $this);
}
}
“SimpleOverrides.php”位于一个名为 "Listeners"
的单独文件夹中,其代码如下所示:
class SimpleOverrides implements Listener{
private $plguin;
public function __construct(Main $plugin){
$this->plugin = $plugin;
$this->plugin->getLogger()->info("SimpleOverrides setup!");
}
public function onPluginCommand(PlayerCommandPreprocessEvent $event){
$message = $event.getMessage();
$array = split(' ', $message);
if(strtolower($array[0]) == "pl" || strtolower($array[0]) == "plugins"){
$event->setCancelled(true);
$event->getPlayer()->sendMessage(TextFormat::GREEN . "This server operates using 100% custom plugins!");
}
}
}
问题是在构造函数中,它希望传递给主 class。但是代码抛出 TypeError
因为它在 "Listeners"
文件夹中寻找 Main.php。如何让它使用主文件夹中的 Main class?
use HubCore\Main;
解决方案是从 hubcore 文件实现 Main class,我有一个错字阻止它从 get-go
运行
如果这个 post 的标题措辞不明显,我明白出了什么问题,但我不知道用什么词汇来表达问题以获得答案google.
实际上它归结为我有一个 php main class 正在注册一个事件侦听器:
class Main extends PluginBase {
public function onEnable(){
$this->getServer()->getLogger()->info("Loading all the things");
$pluginManager = $this->getServer()->getPluginManager();
$pluginManager->registerEvents(new SimpleOverrides($this), $this);
$pluginManager->registerEvents(new AntiGreifListeners($this), $this);
}
}
“SimpleOverrides.php”位于一个名为 "Listeners"
的单独文件夹中,其代码如下所示:
class SimpleOverrides implements Listener{
private $plguin;
public function __construct(Main $plugin){
$this->plugin = $plugin;
$this->plugin->getLogger()->info("SimpleOverrides setup!");
}
public function onPluginCommand(PlayerCommandPreprocessEvent $event){
$message = $event.getMessage();
$array = split(' ', $message);
if(strtolower($array[0]) == "pl" || strtolower($array[0]) == "plugins"){
$event->setCancelled(true);
$event->getPlayer()->sendMessage(TextFormat::GREEN . "This server operates using 100% custom plugins!");
}
}
}
问题是在构造函数中,它希望传递给主 class。但是代码抛出 TypeError
因为它在 "Listeners"
文件夹中寻找 Main.php。如何让它使用主文件夹中的 Main class?
use HubCore\Main;
解决方案是从 hubcore 文件实现 Main class,我有一个错字阻止它从 get-go
运行