0

次のような文字列にリンクがある場合:example.php?this=something&that=somethingelse

等しいものだけを返すにはどうすればよいですか? そう:somethingelse

試してみpregmatchましたが、動作しませんでした。substr私もいつまで持つかわからないので使いたくないです'that'

具体的に言うと、私は持っています

user={$md5_id}&activ_code={$activ_code}

もちろん、別の関数に送信されると、アクティブなコードを変数として渡すことができます。しかし、私は興味がありました。

4

6 に答える 6

4

PHP のparse_url () 関数を使用して URL 自体を解析し、parse_str () 関数を使用してそのパラメーターを解析できます。

スニペットの例を次に示します。

$url = "example.php?this=something&that=somethingelse";
$query = parse_url($url, PHP_URL_QUERY);
parse_str($query, $result);

上記のスニペットでは、後の結果は$result['that']変数内になります

于 2013-06-19T18:24:35.257 に答える
4

parse_url( PHP_URL_QUERYURL のクエリ部分 (? の後) のみが必要なため、パラメーターを使用して) を使用し、次の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
        )
    */
?>

デモ

于 2013-06-19T18:25:10.007 に答える