如何为我的网页制作像facebook这样的用户个人资料链接

时间:2012-10-29 07:27:05

标签: php url yii

我正在使用Yii框架开发一个网页,我想像facebook一样进行网址管理。 这是我的网址 www.mywebpage.com/user/profile/id/10 但是我不想这样显示这个网址,我想像这样显示 www.mywebpage.com / yogi 我能在Yii做到吗?请任何人帮助我。

2 个答案:

答案 0 :(得分:0)

我认为您需要的所有信息都在这里:http://www.yiiframework.com/doc/guide/1.1/en/topics.url

答案 1 :(得分:0)

查看此文章以开始使用: http://yiitutorials.net/easy/easy-url-rewriting-with-yii

您将基本上将用户自定义URL存储在数据库中。因此,示例网址为http://example.com/user/userurl

在主配置中,您可以设置如下规则:

user/<customurl:.+> => 'user/view' //second part is the controller/action

该规则定义了一个带有“http://example.com/user/”的URL,斜杠后面的部分可以通过名为“customurl”的GET变量访问。然后,您可以访问用户自定义URL,如下所示:

$_GET['customurl'];

查询用户记录如下:

$user = User::model()->find("customurl = '".$_GET['customurl']."'");

如下所述,here is an example from a real website。在此示例中,网址如下所示:http://website.com/blog/ {post_title} / {post_id}

所以这个规则就像:

london-blog/<post_title:.+>/<post_url:.+> => 'blog/viewpost' 

因此,在我们的博客控制器中,我们有一个名为viewpost的操作(请参阅上面的规则如何指向此控制器/操作?),它看起来像:

public function actionViewpost(){
    $blogpost = Blog::model()->find("post_title = '".$_GET['post_title']."'");
    ...
}

因此,任何格式为london-blog / some_value / some_value的URL都将指向配置中指定的控制器操作。然后,您可以使用配置中定义的变量名称访问some_value部分(&lt;:。+&gt;中的位)

希望有所帮助!