我试图使用正则表达式来获取以下网址的code
参数的值:
"http:\/\/instagram.com\/?code=wz6kmXaZbrDCHU8OdOW0PrshbZF60Zz8Aji4ivaG"
不幸的是它没有成功,所以我最终做了以下事情:
$jsonRedirectUriWithAuthCode = "http:\/\/instagram.com\/?code=wz6kmXaZbrDCHU8OdOW0PrshbZF60Zz8Aji4ivaG";
print "jsonRedirectUriWithAuthCode= " . $jsonRedirectUriWithAuthCode;
print "\n";
$query = parse_url($jsonRedirectUriWithAuthCode, PHP_URL_QUERY);
print "query= " . $query;
print "\n";
parse_str($query, $params);
print "params['code']= ". $params['code'];
die() ;
哪个输出:
jsonRedirectUriWithAuthCode= "http:\/\/instagram.com\/?code=wz6kmXaZbrDCHU8OdOW0PrshbZF60Zz8Aji4ivaG"
query= code=wz6kmXaZbrDCHU8OdOW0PrshbZF60Zz8Aji4ivaG"
params['code']= wz6kmXaZbrDCHU8OdOW0PrshbZF60Zz8Aji4ivaG"
以上做了我想做的事。但我仍然很好奇如果使用正则表达式将如何做到这一点。有人可以 也许告诉我如何用正则表达式提取代码参数的值?
答案 0 :(得分:1)
使用parse_url
和parse_str
。
为了满足您的好奇心,您可以使用以下内容:
preg_match_all('/code=(.*?)$/', $theUrl, $match);
echo $match[1][0];