如何使用PHP从seo友好的URL获取id?

时间:2010-11-24 23:21:15

标签: php function url seo

如何从seo友好网址获取用户的ID?

这是url(1是id)

http://www.website.com/users/edit/1

并且,如果在这种情况下网址是http://www.website.com/users/edit/1/stack-overflow/,我该如何找到ID?

我试图将其设为<?php user = User::find($_GET['id']); ?>,但ID不起作用。

4 个答案:

答案 0 :(得分:2)

<?php 
$url = explode("/",($_SERVER["REQUEST_URI"])); 
print_r($url); 
?>

在您的情况下,$ url [2]应该具有您之后的ID ...

答案 1 :(得分:1)

实现此目标的最佳方法是使用.htaccessmod_rewrite分配$_GET变量:

htaccess的:

RewriteBase /
RewriteRule ^users/edit/(.*)/(.*)$ users/edit/?user_id=$1&somethingelse=$2 [L,NC]

然后在你的php脚本中:

$user_id = $_GET['user_id'];
$somethingelse = $_GET['somethingelse'];

答案 2 :(得分:0)

嗯......我想你应该告诉我们更多你正在使用的课程或框架......但是你所做的一切都根本不起作用。因为$ _GET只会包含一些内容,如果你实际上在url中以?id = 123的方式传递参数...所以这个查找将不会搜索,因为$ _GET是空的。

答案 3 :(得分:0)

解析超级全局$_SERVER['REQUEST_URI'],其中包含users/edit/1/stack-overflow/,包含正则表达式或substrstrpos