字符串函数,仅从URL中提取ID

时间:2013-12-23 23:04:27

标签: php string url

我有这个字符串:

solutions.php?id=80d28c22-68d9-11e3-af95-742f689f29f1

如何只提取id的一部分,只提取ID的值

80d28c22-68d9-11e3-af95-742f689f29f1

我尝试了PHP的子字符串函数,问题是我还在弄清楚如何告诉它一直到字符串结尾。

这是我到目前为止所做的:

 $_solutionID = substr($_currentURL, 17, ??);

4 个答案:

答案 0 :(得分:2)

试试这个:

$id = $_GET['id'];

那应该有用:)

答案 1 :(得分:1)

您可以从GET superglobal数组中检索该值:$_GET['id']

答案 2 :(得分:1)

您可以将$_GET variable用于您的目的:

echo $_GET['id'];
# => 80d28c22-68d9-11e3-af95-742f689f29f1

$_GET是一个超级全局,可以在PHP脚本中的任何位置使用,并且可用于检查URL中查询参数的值,即它存储当前页面URL的所有查询参数的关联数组

另外,作为参考,如果您碰巧发出POST请求并希望找到发布到该URL的数据,您可以使用$_POST变量,其方式与{{1}完全相同变量。

答案 3 :(得分:-1)

我建议您使用parse_url提取查询(在'?'之后)和正则表达式以提取'id ='之后的ID。

$parts = parse_url('solutions.php?id=80d28c22-68d9-11e3-af95-742f689f29f1');

$query = $parts['query'];

$matches = array();
if (preg_match('/id=([-0-9a-z]+)/', $query, $matches) {
    return $matches[1];
}
相关问题