如何在PHP中从URL获取特定值

如何在PHP中从URL获取特定值,php,Php,我有一个网址: market://details?id=com.balancehero.truebalance&referrer=utm_source%3Dapp%26utm_medium%3Dlink%26utm_term%3D%26utm_content%3D%26utm_campaign%3Dmgm%26campid%3D2FC42T27%26m%3D1%26trackingid%3D000146132647632302db63d958690001 如何从上面的URL000146

我有一个网址:

market://details?id=com.balancehero.truebalance&referrer=utm_source%3Dapp%26utm_medium%3Dlink%26utm_term%3D%26utm_content%3D%26utm_campaign%3Dmgm%26campid%3D2FC42T27%26m%3D1%26trackingid%3D000146132647632302db63d958690001
如何从上面的URL
0001461326476332302db63d958690001


我可以使用
preg\u match
函数或其他东西。

可以使用正则表达式。否则,您无法使用$\u GET直接访问它

$url='market://details?id=com.balancehero.truebalance&referrer=utm_source%3Dapp%26utm_medium%3Dlink%26utm_term%3D%26utm_content%3D%26utm_campaign%3Dmgm%26campid%3D2FC42T27%26m%3D1%26trackingid%3D000146132647632302db63d958690001';

if(preg_match("/([^\?]*)\?trackingid%(d*)/",$url,$matches)){
  echo $matches[1];
} else {
  $_GET['trackingid']
}

如果您将其作为真实URL接收,则简单如下:

echo $_GET['trackingid'];
其他:

1)一种方法是使用
explode()

工作演示:

2) 另一个是你可以使用
preg\u match()
你可以实现它

3) 如果您是在url中获取它,那么使用
$\u get['trackingid']
获取它

4) 使用
parse_str()


到目前为止您尝试过什么吗?请使用urldecode()。它可以解决您的问题。
echo”“;打印(美元);现在您可以通过它获得任何值(至少您知道如何从数组中获取数据)我使用$trackid=substr($head['3'],199300);打印(trackid);但这似乎对我没有帮助,因为有时我会得到00146132647632302db63d958690001值,而不是00014132647632302DB63D958690001缺少这个零
$queryArray = [];
$query = parse_url(
    urldecode("market://details?id=com.balancehero.truebalance&referrer=utm_source%3Dapp%26utm_medium%3Dlink%26utm_term%3D%26utm_content%3D%26utm_campaign%3Dmgm%26campid%3D2FC42T27%26m%3D1%26trackingid%3D000146132647632302db63d958690001"),
    PHP_URL_QUERY
);
parse_str($query, $queryArray);
echo $queryArray['trackingid'];
$test = "market://details?id=com.balancehero.truebalance&referrer=utm_source%3Dapp%26utm_medium%3Dlink%26utm_term%3D%26utm_content%3D%26utm_campaign%3Dmgm%26campid%3D2FC42T27%26m%3D1%26trackingid%3D000146132647632302db63d958690001";
    $url = explode("trackingid=",urldecode($test));
    echo $url[1];
$url = urldecode("market://details?id=com.balancehero.truebalance&referrer=utm_source%3Dapp%26utm_medium%3Dlink%26utm_term%3D%26utm_content%3D%26utm_campaign%3Dmgm%26campid%3D2FC42T27%26m%3D1%26trackingid%3D000146132647632302db63d958690001");
parse_str($url, $tempArray);
echo $tempArray['trackingid'];