在codeigniter中放置大的,很少使用的函数的位置

时间:2012-06-29 20:01:11

标签: php codeigniter

我有几个很大的功能,每个只用在一个控制器功能中,我想知道把它们放在哪里?他们没有显示任何视图,而是处理一些数字。
如果我没有错,我可以在4个可能的地方放置这些功能:在我的控制器,帮助器,库或模型中。但这些似乎都不合适,因为我不希望每次用户使用控制器时都会加载代码,并且模型应该用于执行数据库工作,而帮助程序和库应该包含可以反复使用的代码试。

2 个答案:

答案 0 :(得分:1)

如果是业务逻辑,最好把它放在控制器中作为私有方法,然后你可以在控制器内调用该方法。

正如注释一样,除非您在控制器的构造函数中自动加载或加载帮助程序,否则不会始终加载帮助程序。因此,作为替代方案,您可以将这些方法作为帮助程序,然后在您希望使用它们的控制器操作中加载帮助程序。这样他们只在你需要的时候加载。

答案 1 :(得分:0)

CodeIgniter带有你可能不会使用的帮助程序(除非你在application / config / config.php文件中指定它,否则不会加载)我不认为它有一个问题,你只使用一次存储的函数那里(申请/助手)。例如,我可能只使用一次随机密码生成器,但它仍然存在,除非我调用它,否则不会加载。

$this->load->helper('my_string_generators');