gpt4 book ai didi

php - 在 PHP 应用程序中实现插件的设计模式

转载 作者:IT王子 更新时间:2023-10-28 23:45:55 24 4
gpt4 key购买 nike

对于如何在 PHP 应用程序中实现插件是否有共识?

我查看了 observer pattern接近了,它实际上只是一个通知系统,不允许代码直接扩展应用程序。我目前正在使用我想出的一个简单的钩子(Hook)系统:

public function registerHook($hookName, array $params = array())
{
$this->hooks[] = $hookName;

foreach ( $this->plugins as $pluginName => $hooks ) {
if ( in_array($hookName, $hooks) ) {
$plugin = new $pluginName($this, $this->view, $this->controller);

$plugin->{$hookName}($params);
}
}
}

这对我的目的很有效,但我很好奇是否有一种设计模式已经过多次测试和证明,而我只是在重新发明轮子。

最佳答案

没有像 Silver Bullet 意义上的共识。对于已建立的模式,您有多种选择,例如

仅举几例。

你使用哪个取决于你,但你应该确保你的系统架构支持模块化。查看这些幻灯片以获取一些想法

关于php - 在 PHP 应用程序中实现插件的设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9244313/

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