关于CodeIgniter URL的基本问题

Rom*_*man 3 php codeigniter

当我在CodeIgniter中创建一个控制器时,例如"login.php".我在其中创建了一个公共函数"index",并在函数中加载了一个视图"login_form",CodeIgniter生成了url localhost/test/login.

现在,如果我在同一个Controller中创建另一个函数"register",那么url将是localhost/test/login/register,但我想创建url localhost/test/register.我是否需要创建一个新的控制器寄存器并使其成为索引函数,或者可以通过在登录控制器中添加函数来生成相同的URL.这种"通常"的做法是什么?谢谢.

Wes*_*rch 5

如上所述,您可以(并且很可能应该)使用此路线:

// config/routes.php
$route['register'] = 'test/register';
Run Code Online (Sandbox Code Playgroud)

这基本上是说:如果/register要求,给他们/test/register.

请注意,/test/register它仍然有效.如果由于某种原因要禁用它,可以执行以下操作:

$route['test/register'] = FALSE; // Or map to your 404 page
Run Code Online (Sandbox Code Playgroud)

......但总的来说你不需要.

请注意,路由的使用不会神奇地重写您的链接或任何东西,它只是在请求时将请求路由到其他位置.

重新映射非常酷,但你所要求的绝对是一条路线的工作.仔细阅读用户指南,您可以使用它们做很多事情.