gpt4 book ai didi

php - 隐藏 URL 中的 GET 参数

转载 作者:可可西里 更新时间:2023-10-31 23:51:22 24 4
gpt4 key购买 nike

如何隐藏 URL GET 参数 ( http://domain.com/MyFirstYii/page?view=about )。我搜索了很多帖子。他们都在谈论重写和 URL 管理器,但我无法实现我想要的。 :(

我的场景是,

我只是想隐藏 URL GET 参数。

例如:

http://domain.com/MyFirstYii/page***?view=about***

我想隐藏***?view=about***

然后 URL 应该看起来像这样 http://domain.com/MyFirstYii/page。像这样的其他页面 http://domain.com/MyFirstYii/post。简而言之,我的 GET 参数应该像 POST 参数一样。

提前致谢。

编辑:

我想在URLManager中创建一些规则,但是什么样的规则会隐藏GET参数。

最佳答案

正则表达式中的

\w 表示“word”字符,而“my-prety-page”等 url 部分将不匹配。要隐藏 GET 参数,您必须改进 urlManager 规则。您可以使用 SEF url 为页面编写这样的规则:

'<controller:\w+>/<id:\d+>/<title:[^\/]*>/*' => '<controller>/view'

在这种情况下,当您输入 url 时

http://example.com/page/12/my-prety-title

将调用一个页面 Controller 来执行以 id 和 title 作为参数的 View 操作。如果你输入这个 url 是一样的:

http://example.com/page/view?id=12&title=my-prety-title

规则的最后一部分 /* 允许保留额外的参数。例如。如果你的地址是

http://example.com/user/55/john-doe-junior/foo/bar/

UserControlleractionView中你可以这样写

echo '<pre>' ;
print_r($_GET);
echo '</pre>' ;
die();

你会看到

Array
(
[id] => 55
[title] => john-doe-junior
[foo] => bar
)

关于php - 隐藏 URL 中的 GET 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17086732/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com