CodeIgniter Url重写类似于Pinterest和Twitter

时间:2013-06-14 09:52:31

标签: codeigniter twitter url-rewriting pinterest

我刚开始使用CodeIgniter,我正在创建一个用户登录的网站。我想知道如何根据登录用户的用户名将自定义名称写入登录用户的URL,类似于twitter和pinterest

http://pinterest.com/username/

目前我有一个配置文件控制器,它只是;

http://example.com/profile/

为每个用户。 codeigniter是否可以这样做?

1 个答案:

答案 0 :(得分:1)

要输出链接,您可以使用CI's URL helper

你必须自动加载它,这将在config/autoload.php

$autoload['helper'] = array('url');

或从您的函数加载它:

$this->load->helper('url');

然后,您可以使用http://example.com/profile/输出anchor()之类的链接:

$username = 'Corey'; // Set the user's name
anchor($username);

那将输出:

http://example.com/corey/

我假设您不想在控制器中为数据库中的每个用户创建一个函数。将魔术方法__call()添加到您的控制器并重定向到您的配置文件功能,并将用户的名称作为参数:

public function __call($name, $arguments)
{
    $this->profile($name);
}

但这还不够,你还必须做一些路线黑客攻击。 See Minimize your URLs in CodeIgniter