我如何从 Codeigniter 中的助手调用助手?

Posted

技术标签:

【中文标题】我如何从 Codeigniter 中的助手调用助手?【英文标题】:How would I call a helper from a helper in Codeigniter? 【发布时间】:2010-12-25 03:27:30 【问题描述】:

我正在 Codeigniter 中编写一些自定义帮助程序,我想在我的帮助程序中从其他帮助程序文件(如日期等)调用一些函数。我不断收到“调用未定义函数”错误。如何从我的助手中引用其他助手函数?

谢谢

D

【问题讨论】:

因为这样的事情,我开始远离 CI。另外,如果一个模型包含另一个模型怎么办?或者如果一个控制器扩展了另一个控制器?看起来 Kohana 解决了这些问题,我迫不及待地想在我的下一个项目中尝试一下...... @Kevin。您对控制器扩展控制器和从另一个模型访问模型有什么问题? 【参考方案1】:

从提供的源链接中可以看出,引用 CodeIgniter 对象调用 $this 仅在您的控制器、模型和视图中可用。 然而,要从外部充分利用 CodeIgniter 的本机资源,您只需像这样创建它的一个实例:

$instanceName =& get_instance();

然后,要访问这些资源,您将使用$instanceName->,而不是使用$this->

Source

【讨论】:

这是我的第一个答案,我有点害怕,很高兴你猜对了:P【参考方案2】:
function first_function()

    $ci =& get_instance();
    $ci->load->helper('date');
    $mysql = '20061124092345';
    $unix = mysql_to_unix($mysql);

【讨论】:

以上是关于我如何从 Codeigniter 中的助手调用助手?的主要内容,如果未能解决你的问题,请参考以下文章

如何在每个页面中加载 CodeIgniter 助手?

CodeIgniter 2.1.3 - 表单助手 - 无法提交数据

CodeIgniter资产目录字符串助手

从内联助手调用扩展助手 - 如何?

php codeigniter - 表单助手 - 如何在无线电输入上实现 set_value

codeigniter 覆盖表单助手中的 set_value 函数,使用 MY_helper 在获取时重新填充字段,同时发布