gpt4 book ai didi

cakephp - 如何在Cakephp中使用帮助程序和组件中的常用功能

转载 作者:行者123 更新时间:2023-12-02 09:20:41 28 4
gpt4 key购买 nike

我们熟悉 CakePHP 中的组件和助手。

我有一个 ABC 组件和 XYZ 助手,两者都有相同的功能(大约 2000 行,总共 4000 行)。有什么方法可以在 Controller 和.CTP 文件中使用相同的功能。相同的功能使用两次是不好的。

有什么方法可以让我在 Helper/Component 中使用 Component/Helper 函数而无需重写吗?

组件和助手的方法相同>>

组件

类 DATAComponent 扩展组件 {

public $components = array('Session', 'THmail');

public function UsaStateList()
{ /********/}

助手

class LabHelper extends AppHelper {
public function UsaStateList()
{ /********/}
}

最佳答案

好吧,你将不得不重写一些东西,它不会自行解决。

CakePHP 仍然是 PHP,因此您可以轻松应用常见模式来保持事物干燥。最直接的方法可能是将共享功能转移到一个实用程序类中,您的组件和帮助程序都可以在内部使用该实用程序类,同时保持其公共(public) API 不变。

一些 CakePHP 助手会执行类似的操作,例如检查时间助手。

Traits也可能是一个选项,具体取决于共享的功能数量以及它与组件/帮助程序中的使用的相关程度。

关于cakephp - 如何在Cakephp中使用帮助程序和组件中的常用功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24261432/

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