我是codeigniter 3.x的新手,我写的时候是codeigniter 3.x
class Auth extends CI_Controller {
public function __construct() {
parent::__construct();
echo "ya";
}
}
它显示我的错误
404 Page Not Found
The page you requested was not found.
当我写作
class Auth extends CI_Controller {
public function __construct() {
parent::__construct();
echo "ya";
}
public function index() {
echo "aya";exit;
}
}
它工作正常并显示输出为{yaaya}。 任何人都可以告诉我这是什么?
答案 0 :(得分:1)
这背后的原因是你运行网址
默认情况下会查看此控制器的test_3.find(
{"humsavar.Disease":
{'$and': [
{"$ne": u'-'},
{ "$ne":None},
{ "$exists": True}
]}
},
{"humsavar.dbSNP":
{'$and':[
{"$ne": u'-'},
{ "$ne": None},
{ "$exists": True}
]},
},
{"humsavar":True, "_id": False}
).count()
如果您使用网址
它会调查控制器的功能
如果您没有在控制器中编写任何函数,只需__construct
index()
这意味着没有index()函数会显示function __construct() {
parent::__construct();
}
答案 1 :(得分:0)
这种情况正在发生,因为当您没有提供要采取的行动时,CI正在寻找index()
。对于第一种情况,它不存在,因此它抛出了错误。但在第二种情况下它就在那里,所以它有效。你不能明确地致电__construct()
。
它查找controller/action
的默认网址格式。如果未提供action
,则会在该控制器中查找index()
。
因此,当它获得index()
时,它会实例化控制器类并调用__construct()
。