使用php在url中查找参数

Posted

技术标签:

【中文标题】使用php在url中查找参数【英文标题】:find parameters in url using php 【发布时间】:2013-03-30 07:48:18 【问题描述】:

我正在寻找一种方法来查找包含提取动态值的参数的 url

例如,我网站上的任何地方都有一个带有包含字符的链接的按钮

example.com/register/register-company.html?tx_powermail_pi1[regUid]=78

我需要来自 regUid 的 id 来处理查询,78 不是静态的。

感谢任何帮助。

【问题讨论】:

你读过查询字符串吗?试试this。 您的意见是什么?这不是很清楚。另外,参数名称是否总是相同的?请尝试更精确。 @UlfricStormcloak 我不认为他试图在 GET 请求之后提取 GET 参数。 您想从其他站点获取它,还是从您的站点获取?如果它是你的,你需要使用javascript 而不是php 使用parse_url! 【参考方案1】:
$str = "http://example.com/somepage?tx_powermail_pi1[regUid]=78";
$uri = parse_url($str);
if($uri["query"])
   #if there is query string only....
   parse_str($uri["query"], $test);
   var_dump($test);

这适用于任何网址。如果你想捕捉你当前的 url 获取参数,你可以使用

$_GET['tx_powermail_pi1']['regUid']

【讨论】:

regUid 的最后一部分 -> 78 是动态的(不是静态的)我可以是 55、77 或其他值,但 GET 将不起作用,因为在点击按钮之前我需要 id 我不明白你.. GET 将从当前页面获取值.. 当您更改您的 url 时,您会转到其他页面,那里的值会有所不同.. 正如我用这个链接和参数在我的网站上描述它的一个按钮。这不是我的网址栏中的网址。 有没有办法通过DOMdocument解析并找到它?

以上是关于使用php在url中查找参数的主要内容,如果未能解决你的问题,请参考以下文章

急!!php获取url参数

在linux下使用curl访问 多参数url GET参数问题

在linux下使用curl访问 多参数url GET参数问题

如何使用 AWS Elastic Beanstalk 在 URL 中运行带有参数的 PHP 脚本?

php如何获取url的参数

在php中验证url参数[关闭]