希望这只是快速的事情,但我找不到有用的东西。
我想从CodeIgniter中的控制器检查模型中是否存在函数,如果存在,则应运行该函数。
我尝试了以下内容:
$comp_model = 'model_comp_'.$comp_code;
$this->load->model('comp/'.$comp_model);
if (function_exists($this->$comp_model->join_comp))
...
和
if (method_exists($this, $comp_model->join_comp()))
...
甚至只是在if语句中调用该函数
if ($this->$comp_model->join_comp())
...
请帮忙!
答案 0 :(得分:1)
我遇到了同样的问题并以这种方式解决了这个问题:
$modelName = 'some_model';
$pageModelPath = APPPATH . 'models' . DIRECTORY_SEPARATOR . $modelName . '.php';
if( file_exists( $pageModelPath ) ){
require $pageModelPath;
$model = new $modelName;
if( method_exists($model, 'myFunction') ){
$model->myFunction();
}
}
答案 1 :(得分:0)
您是否只是在所有型号中实施该方法?我认为您应该使用名为join_comp()
的受保护方法创建父级,并使所有模型都从该父级派生。您只需添加自动批准'代码到指定的模型。