PHP 的 $_GET 和 URL 重写

URL 重写如何影响 PHP 的 $_GET 参数?

假设我有一个像 http://example.com/index.php?p=contact 这样的 URL,我使用 $_GET['p'] 来告诉index.php 提供联系页面.如果我使用重写规则将 URL 转换为 http://example.com/contact$_GET['p'] 是否仍能按预期工作?>

如果是这样,你能详细说明它为什么起作用吗?如果不是,可以使用什么策略来解决问题,以便页面在重写和不重写的情况下都能正常工作?

解决方案

是的,这会按预期工作.

How does URL rewriting affect the $_GET parameter for PHP?

Say I have a URL like http://example.com/index.php?p=contact and I use $_GET['p'] to tell index.php to serve the contact page. If I use a rewrite rule that converts the URL to http://example.com/contact, will $_GET['p'] still work as expected?

If it does, could you elaborate on why it works? If not, what strategies could be used to solve the problem so that the page will work both with and without the rewrite?

解决方案

Yes, that will work as expected.

相关文章