この記事の内容は、phpがURLの各種パラメータを取得するためのコード例です。一定の参考値がありますので、困っている方は参考にしていただければ幸いです。
URL は、いくつかの重要な関数 parse_url、parse_str、および http_build_query を処理します
parse_url()
この関数は、URL を解析してそのコンポーネントを返すことができます。これは次のように使用されます。
array parse_url(string $url)
この関数は、既存の URL のさまざまなコンポーネントを含む連想配列を返します。これらのコンポーネントのいずれかが欠落している場合、このコンポーネントの配列エントリは作成されません。コンポーネントは次のとおりです。
# の後ろ この関数は、指定された URL が有効であることを意味するものではなく、上記のリスト内の部分を区切るだけです。 parse_url() は不完全な URL を受け入れ、それらを正しく解析しようとします。この関数は相対パス URL には影響しません。
<?php $url = "http://52php.cnblogs.com/welcome/"; $parts = parse_url($url); print_r($parts); ?>
プログラムの実行結果は次のとおりです:
Array ( [scheme] => http [host] => 52php.cnblogs.com [path] => /welcome/ )
<?php $url = 'http://username:password@hostname/path?arg=value#anchor'; print_r(parse_url($url)); echo '<br />'; echo parse_url($url, PHP_URL_PATH); ?>#プログラムの出力:
Array ( [scheme] => http [host] => hostname [user] => username [pass] => password [path] => /path [query] => arg=value [fragment] => anchor )URL の各部分を簡単に分解できます。次のような指定された部分を抽出するのが簡単です。 PHP_URL_QUERY または PHP_URL_FRAGMENT。
parse_str()
parse_str は、URL 内のクエリ文字列、つまり $_SERVER['QUERY_STRING' を通じて取得できる文字列値を解析するために使用されます。要求された URL が http://localhost/parse_str.php?id=1&category=php&title=php-install の場合、$_SERVER['QUERY_STRING'] によって返される値は id=1&category=php&title=php-install です。 、そしてこの形式 文字列は、parse_str を使用して連想配列に解析されます。
使用法は次のとおりです: void parse_str(string $str [, array &$arr ])この関数は 2 つのパラメータを受け取ります。$str は必要な文字列です。 to be parsed 、およびオプションのパラメータ $arr は、解析後に生成された配列値が格納される変数名です。オプションのパラメータを無視すると、$id、$category、$title などの変数を直接呼び出すことができます。以下のスクリプトは GET リクエストをシミュレートします。echo parse_url($url, PHP_URL_PATH);http_build_query
配列を URL に変換しますか? 次のパラメータ文字列は、urlencode によって自動的に処理されますstring http_build_query (array formdata [, string numeric_prefix])
指定されたキーがない場合、またはキーが数字の場合は配列に添字を追加します以上がURLの各部分のパラメータを取得するphpのコード例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。