的某一部分。如果我有像繩子鏈接:example.php?this=something&that=somethingelse
返回一個字符串
如何我只等於什麼回報?所以:somethingelse
我試過pregmatch
,但還沒有得到它的工作。我也不想使用substr
,因爲我不確定'that'
會有多長。
具體而言我有
user={$md5_id}&activ_code={$activ_code}
被髮送到另一個功能,當然我能通過有源代碼作爲一個變量。但我很好奇。
的某一部分。如果我有像繩子鏈接:example.php?this=something&that=somethingelse
返回一個字符串
如何我只等於什麼回報?所以:somethingelse
我試過pregmatch
,但還沒有得到它的工作。我也不想使用substr
,因爲我不確定'that'
會有多長。
具體而言我有
user={$md5_id}&activ_code={$activ_code}
被髮送到另一個功能,當然我能通過有源代碼作爲一個變量。但我很好奇。
請嘗試以下...
$str = "example.php?this=something&that=somethingelse";
$values = array();
$query = substr(strstr($str, "?"), 1);
parse_str($query, $values);
echo $values["that"];
最適合我在做什麼!謝謝 – Alex
高興地幫助:) –
使用parse_url
(與PHP_URL_QUERY
參數,因爲我們只想查詢部分(之後?)的UR L)和parse_str
這樣:
<?php
$url = "example.php?this=something&that=somethingelse";
parse_str(parse_url($url, PHP_URL_QUERY), $queryParams);
print_r($queryParams);
/*
Array
(
[this] => something
[that] => somethingelse
)
*/
?>
如果你只有字符串user={$md5_id}&activ_code={$activ_code}
,你可以簡單地使用parse_str
:
<?php
$string = "user=ABC123&activ_code=DEF456";
parse_str($string, $queryParams);
print_r($queryParams);
/*
Array
(
[user] => ABC123
[activ_code] => DEF456
)
*/
?>
您可以使用substr()
和strstr()
得到字符串的查詢部分(?
後的所有內容):
$query = substr(strstr($url, '?'), 1)
然後用parse_str()
分析查詢字符串到變量
parse_str($query, $vars);
你需要的變量是現在可用於$vars
陣列:
$that = $vars['that'];
下面是關於如何使用的完整示例和parse_str
。
示例代碼
$url = "http://test.com/example.php?this=something&that=somethingelse";
$url_breakdown = parse_url($url);
parse_str($url_breakdown['query'], $url_params);
print_r($url_breakdown);
print_r($url_params);
輸出
Array
(
[scheme] => http
[host] => test.com
[path] => /example.php
[query] => this=something&that=somethingelse
)
Array
(
[this] => something
[that] => somethingelse
)
與工作的preg_match
if(preg_match("/^.+that=(.+)&?$/", "example.php?this=something&that=somethingelse", $matches))
print_r($matches);
結果
Array
(
[0] => example.php?this=something&that=somethingelse
[1] => somethingelse
)
我不會downvote,因爲它*做*工作 - 但真的嗎?正則表達式肯定不是這個工作。 – h2ooooooo
也許你可能更具體爲什麼不呢? –
有沒有知道'that'兩端,其中的價值的可靠途徑?另一個參數?接近報價?什麼是完整的字符串? –