我正在使用codeignitor,目前我有一个名为“Common_func”的库,它是自动加载的。
我可以随处称之为
$this->Common_func->common_method();
在使用控制器和模型的情况下可以,但在视图的情况下它会使HTML变得丑陋,
我知道模板解析选项,但我不想这样做。
是否有任何可行的方式来访问缩短结构。
喜欢这样(或者说文字最少的单词)
Common_func->common_method();
或者比这更好。
感谢。
答案 0 :(得分:3)
最佳做法是不在View
文件中使用库,库应该用在控制器和模型中。帮助程序用于视图,它们是随机函数,可帮助您进行格式化/代码生成,有时甚至更多。
然而,如果你真的想保留你的库及其方法,你可以制作“抽象”助手,这将有助于你使视图文件干净和可读:
<强> common_helper.php 强>
function common_method($arg) {
$ci =& get_instance();
return $ci->Common_func->common_method($arg);
}
这将使您的助手更新库中所做的更改。
答案 1 :(得分:0)
我在codeigniter论坛中找到了这个。此链接可能会帮助您
http://codeigniter.com/forums/viewthread/139788/
如果您的图书馆名称很长,那么您可以缩小一点
class SomeClass extends CI_Controller{
function __construct(){
parent::__construct();
$this->lib=$this->Really_Long_Library_name;
}
}
这样您就可以使用$this->lib
来访问其方法。