ホームページ > バックエンド開発 > PHPチュートリアル > phpのparse_url()関数の定義と使い方を詳しく解説

phpのparse_url()関数の定義と使い方を詳しく解説

怪我咯
リリース: 2023-03-07 21:54:01
オリジナル
2618 人が閲覧しました

PHPのparse_url()関数の機能は何ですか?

php の parse_url() 関数は URL を解析し、URL のコンポーネントを返します。構文は次のとおりです:

構文

array parse_url(string $url,int $component)
ログイン後にコピー

パラメータの詳細

パラメータ名パラメータの説明
$urlparsされる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のparse_url()関数の定義と使い方を詳しく解説

より複雑な例を見てみましょう:

<?php
$url = &#39;http://hello:manong@jiaochen/blog?name=wxp#student&#39;;
print_r(parse_url($url));
echo "<br/><br/>";
echo parse_url($url, PHP_URL_PATH);
?>
ログイン後にコピー

コードの実行結果:

phpのparse_url()関数の定義と使い方を詳しく解説

このコードからわかるように、次のように設定できます。 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 サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート