0

假设我在网页上有以下 URL,我如何利用该explode()功能只给我 ID,而不是 ID 后面的 URL 的其余部分?

file.php?id=12345&foo=bar

我可以得到ID,但总是有以下“ &foo=bar”。

谢谢。

4

3 回答 3

5

如果您需要处理有效的 URL,您可以使用

parse_url

parse_url 文档

将 URL 分解为不同的部分(SCHEME、HOST、PORT、USER...)

然后,使用

parse_str

parse_str 文档

QUERY部分而言,为了检索包含所有参数的数组。然后,您可以捕获所需的内容。

于 2013-04-15T22:58:33.360 回答
3
parse_str($_SERVER['QUERY_STRING']);
echo $id;

parse_str将从查询字符串变量创建 PHP 变量。 http://www.php.net/manual/en/function.parse-str.php

于 2013-04-15T23:01:37.480 回答
2

如果它是一个完整的 URL,您可以使用它parse_url()来获取查询字符串部分。

如果它只是一个片段,你可以使用explode()它来获取它,那么parse_str()

list($path, $qs) = explode('?', $url, 2);
parse_str($qs, $args);
echo $args['id'];

2告诉将explode()字符串分成最多 2 个部分(?在这种情况下,在 之前和之后)。

于 2013-04-15T22:59:58.820 回答