php-CodeIgniter“ default_controller”函数在URL中没有控制器名称

如果这是一个“ duh”问题,或者如果您需要更多信息来回答,请原谅我,我对CodeIgniter还是陌生的,仍然没有找出一些具有最佳实践的东西,例如…

在routes.php中,我有$route [‘default_controller’] =“ home”;所以我的default_controller显然是“家”.

在我的home.php控制器中,我有:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Home extends CI_Controller {
    function __construct() {
        // blah
    }
    function index(){
        // blah
    }
    function login(){
        // blah
    }
}

哪个工作正常,一切都没有问题.我唯一不知道的是是否要访问登录功能,我目前必须访问www.blah.com/home/login.如何更改它,使其仅进入www.blah.com/login,而无需创建新的控制器(我希望将其中一些时基URL全部保留在我的默认控制器中)?甚至有可能吗?还是我只需要创建一个新的控制器?

如果只需要创建一个新控制器,是否有关于您拥有多少个控制器的最佳实践等.

解决方法:

文档说:如果URL中提供的那些段不能与有效路由匹配,则此路由将告诉路由器要使用的URI段.

因此,使用$route [‘login’] =’home / login’;

上一篇:CodeIgniter:PHP错误:Table.php中的foreach()中的arg无效:第198行


下一篇:中国垃圾分类处理行业市场现状分析及未来发展趋势预测报告2022-2027年