/ 123和/?123之间有什么区别?

Bol*_*ock 6 php url pathinfo query-string

我注意到一些网站(包括旧版http://careers.stackoverflow.com 1.0)的查询字符串如下所示:

http://somewebapp.example/?123

相比于:

http://somewebapp.example/123 要么 http://somewebapp.example/id/123

开发人员选择使用第一个示例而不是第二个和第三个示例来实现其Web应用程序URL的原因是什么?

作为奖励,如果这123是数据库表中某些行的主键,那么如何在PHP中实现第一个示例?(我只需要知道如何123从URL中检索;我已经知道如何在数据库中查询主键123.)

编辑[5/28]:哎呀,忘了让每个人都知道我知道后两个URL是什么,它们如何工作以及如何实现它们.感谢提醒,但我认为我有一些无关紧要的错误观念,无论如何都是偶然澄清的!

Mic*_*zek 9

第一种更容易实施; 之后的一切?是查询字符串的一部分.Web服务器加载在?之前指定的页面,并单独处理查询字符串(在PHP中可以访问$_GET)

在第二个示例中,开发人员需要设置Web服务器以将所有请求重定向到特殊页面(因为/123服务器上没有页面),然后将解析URL以确定请求的内容

至于你的最后一个问题,它123会显示$_GET为一个键,所以key($_GET)假设它是你在查询字符串中传递的唯一内容