Php CodeIgniter将参数传递给CORE MY_控制器中的函数
我希望这是可能的 我可以将参数传递给CORE/MY_控制器中的函数吗 我正在开发一个有三个控制器的应用程序,大多数函数都是相同的,所以我想对函数进行编码,并在需要时在它们值得尊敬的控制器中再次使用它们 像search\u User\u Name()这样的函数将在这两个控制器中,如果我能编写一次代码并重用它,那就太棒了。我目前面临的问题是Php CodeIgniter将参数传递给CORE MY_控制器中的函数,php,html,codeigniter,codeigniter-routing,Php,Html,Codeigniter,Codeigniter Routing,我希望这是可能的 我可以将参数传递给CORE/MY_控制器中的函数吗 我正在开发一个有三个控制器的应用程序,大多数函数都是相同的,所以我想对函数进行编码,并在需要时在它们值得尊敬的控制器中再次使用它们 像search\u User\u Name()这样的函数将在这两个控制器中,如果我能编写一次代码并重用它,那就太棒了。我目前面临的问题是 MY_Controller.php与其他控制器不在同一文件夹中 search\u User\u Name()函数必须接收search\u User\u Name
class MY_Controller extends CI_Controller{
public function __construct() {
parent::__construct();
}
public function Testing($var){
$function_var= $var;
return $function_var;
}
}
我在controller文件夹中有一个controller作为Sub_controller
class Sub_Controller extends MY_Controller{
public function __construct() {
parent::__construct();
}
public function Show(){
echo($this->Testing());
}
}
根据我的观点
echo anchor('Sub_Controller/Show/Parameter','Pass a parameter');
据我所知,我很想在屏幕上显示“参数”一词。
能帮忙吗 它可以正常工作,但您仍然需要传入参数:
class Sub_Controller extends MY_Controller {
public function Show($arg = null) {
echo($this->Testing($arg));
}
}
或者,您可以从基函数读取URI段,但这样您就没有那么多控制权:
class MY_Controller extends CI_Controller {
public function Testing() {
$function_var = $this->uri->segment(2);
return $function_var;
}
}
class Sub_Controller extends MY_Controller {
public function Show() {
echo($this->Testing()); // prints the argument in the URL
}
}
最好是第一种方式。我建议您阅读PHP文档中的OOP章节,但对于您的案例,您可以阅读此内容,然后阅读此链接,但如果有任何问题,我会发布更多问题。“我开始说机器了”