我看到了一个带有以下网址方案的论坛(IPS):
www.example.com/index.php?/topic/12345
显示主题ID 12345。
我对php很新,我想知道,他们究竟做了什么来理解上述请求是否要求主题ID 12345?我只知道如何使用$_POST
和$_GET
收集信息。以下是我对后者的尝试:
echo "The user wants to see the topic ID " . $_GET["topic"];
但这需要表格
的网址www.example.com/index.php?topic=12345
那么,他们为实现该计划做了什么?
答案 0 :(得分:1)
有两种方法:
$_SERVER['REQUEST_URI']
这样的服务器变量来分割和分析php脚本中的url。您仍然需要重写以确保所有请求都通过您的脚本而不会转到未找到的页面。答案 1 :(得分:1)
他们可能正在使用类似于名为mod_rewrite
的apache模块的东西。 mod_rewrite
用于重写网址。在这种情况下?topic = 12345正在被重写/翻译为topic / 12345 /。
branded3.com上有一篇不错的文章,其中概述了您可以使用mod_rewrite
执行的一些很酷的内容。您需要Create beautiful url’s with mod_rewrite
部分来了解如何使用它来创建效果更好的网址。