PHPのparse_url()関数の機能は何ですか?
php の parse_url() 関数は URL を解析し、URL のコンポーネントを返します。構文は次のとおりです:
構文
array parse_url(string $url,int $component)
パラメータの詳細
パラメータ名 | パラメータの説明 |
$url | parsされるURL無効な文字が使用されます_ 交換する 。 |
$component | PHP_URL_SCHEME、PHP_URL_HOST、PHP_URL_PORT、PHP_URL_USER、PHP_URL_PASS、PHP_URL_PATH、PHP_URL_QUERY、または PHP_URL_FRAGMENT のいずれかを指定して、URL の指定された部分の文字列を取得します。 (PHP_URL_PORT として指定された場合を除き、整数値が返されます)。 |
ps : この関数は URL を解析し、URL に現れるさまざまなコンポーネントを含む連想配列を返します。
この関数は、指定された URL の有効性を検証するために使用されるのではなく、URL を以下にリストされている部分に分割するために使用されます。不完全な URL も受け入れられ、parse_url() はそれらをできるだけ正確に解析しようとします。
戻り値
著しく修飾されていない URL の場合、parse_url() は FALSE を返す場合があります。
コンポーネントパラメータが省略された場合、連想配列配列が返され、現在少なくとも 1 つの要素が配列内に存在します。配列内の可能なキーは次のとおりです:
scheme - http
host
port
user
pass
path
クエリ - 質問中
fragment の後 - ハッシュ記号 #
の後 コンポーネントパラメータが指定されている場合、parse_url() は配列の代わりに文字列 (または PHP_URL_PORT として指定されている場合は整数) を返します。 URL 内に指定されたコンポーネントが存在しない場合は、NULL が返されます。
例
<?php $url = "http://www.php.cn:8080/index.php?name=wxp&id=2"; $parts = parse_url($url); print_r($parts); ?>
コードの実行結果:
より複雑な例を見てみましょう:
<?php $url = 'http://hello:manong@jiaochen/blog?name=wxp#student'; print_r(parse_url($url)); echo "<br/><br/>"; echo parse_url($url, PHP_URL_PATH); ?>
コードの実行結果:
このコードからわかるように、次のように設定できます。 URL の各部分を取得する 2 つのパラメータ。 2 番目のパラメータの値は次のとおりです:
PHP_URL_SCHEME
PHP_URL_HOST
PHP_URL_PORT
PHP_URL_USER
PHP_ PASS
PHP_URL_PATH
PHP_URL_QUERY
PHP_URL_FRAGMENT
【おすすめ関連記事】:
1.ファイルパス情報を取得するphp pathinfo()関数の詳細説明
2.phpbasename()関数の使い方の詳細説明ファイル名を取得する
3. phpのpathinfo()、parse_url()、basename()関数を使用してURLを解析する例の説明
以上がphpのparse_url()関数の定義と使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。