代码之家  ›  专栏  ›  技术社区  ›  michaelmcgurk

从php字符串中获取值

php
  •  0
  • michaelmcgurk  · 技术社区  · 6 年前

    我的PHP脚本中有一个变量,名为 $url

    以下是我如何使用它的示例:

    <?php 
    $url = '/test/?utm_source=test&utm_campaign=test2&utm_medium=test3";
    

    我想要一个PHP代码片段,它可以抓住 utm_source , utm_campaign 和; utm_medium . 我如何做到这一点?

    3 回复  |  直到 6 年前
        1
  •  1
  •   Ryan Lund    6 年前

    试试这个

    <?php 
    
    $url = "/test/?utm_source=test&utm_campaign=test2&utm_medium=test3";
    
    $url_parsed=parse_url($url);
    $query_params=[];
    $query_parsed=parse_str($url_parsed['query'],$query_params);
    
    echo $query_params['utm_source'].PHP_EOL.
        $query_params['utm_campaign'].PHP_EOL.
        $query_params['utm_medium'].PHP_EOL;
    ?>
    
        2
  •  1
  •   AnTrakS    6 年前

    另一种具有分解功能的方法:

    <?php 
    $url = "/test/?utm_source=test&utm_campaign=test2&utm_medium=test3";
    $params = explode("=", $url);
    
    $utmSource = explode("&", $params[1]);
    $utmCampaign = explode("&", $params[2]);
    $utmMedium = $params[3];
    
        3
  •  0
  •   SurfMan    6 年前

    我觉得功能 parse_str() 正是你想要的。见 https://secure.php.net/manual/en/function.parse-str.php