0

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

http://pinterest.com/username/

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

http://example.com/profile/

对于每个用户。使用codeigniter可以做到这一点吗?

4

1 回答 1

1

要输出链接,您可以使用CI 的 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);
}

但这还不够,您还必须进行一些路由黑客攻击。请参阅在 CodeIgniter 中最小化您的 URL

于 2013-06-14T10:33:54.110 回答