ホームページ >バックエンド開発 >PHPチュートリアル >PHP は URL (parse_url) パラメーターを配列 (parse_str) に解析します_PHP チュートリアル

PHP は URL (parse_url) パラメーターを配列 (parse_str) に解析します_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:28:591013ブラウズ

現在の URL は php を通じて取得されます。URL 内のパラメーターを抽出する必要がある場合はどうすればよいですか?このプロセスは実際には非常に単純で、PHP の 2 つの組み込み関数、つまり parse_url 関数と parse_str 関数を使用して正常に完了できます。以下では、これら 2 つの関数について簡単に説明し、例を使用して URL 内のパラメーターを抽出する方法を説明します。

(1) parse_url (PHP 4、PHP 5) — URL を解析し、そのコンポーネントを返します。関数のプロトタイプは次のとおりです。 mixed parse_url ( string $url [, int $component = -1 ] )

この関数は URL を解析し、URL に含まれるさまざまなコンポーネントを含む連想配列を返します。

この関数は、指定された URL の有効性を検証するために使用されるのではなく、URL を以下にリストされている部分に分割するために使用されます。不完全な URL も受け入れられ、parse_url() はそれらをできるだけ正確に解析しようとします。

パラメータの説明

url 解析する URL。無効な文字は_に置き換えられます。

コンポーネント 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 として指定された場合を除き、整数値が返されます)。

戻り値

著しく修飾されていない URL の場合、parse_url() は FALSE を返す場合があります。

コンポーネントパラメータが省略された場合、連想配列配列が返され、現在少なくとも 1 つの要素が配列内に存在します。配列内で使用できるキーは次のとおりです:

スキーム - http のような

ホスト

ポート
ユーザー
パス
パス
クエリ - 疑問符
の後 フラグメント - ハッシュ記号 #
の後
コンポーネント引数が指定されている場合、parse_url() は配列の代わりに文字列 (または PHP_URL_PORT として指定されている場合は整数) を返します。 URL 内に指定されたコンポーネントが存在しない場合は、NULL が返されます。

(2) parse_str - クエリ文字列を変数に解析します。関数のプロトタイプは次のとおりです。

parse_str(文字列,配列) パラメータの説明

文字列が必要です。解析する文字列を指定します。

配列 オプション。変数を格納する配列の名前を指定します。このパラメータは、変数を配列に格納するように指示します。配列パラメータが設定されていない場合、この関数によって設定された変数は、同じ名前ですでに設定されている変数を上書きします。

注: php.ini の magic_quotes_gpc 設定は、この関数の出力に影響します。有効にすると、変数は parse_str() によって解析される前に addslashes() によって変換されます。

(3) URLから抽出されるパラメータの具体例は以下の通りです。 リーリー

印刷結果は次のとおりです:

配列 ( [スキーム] => http

[ホスト] => www.phpernote.com

[パス] => /ad.php

[クエリ] => id=325&action=index&page=3

)
配列
(
[id] =>325
[アクション] =>インデックス
[ページ] => 3
)

興味がありそうな記事


curlのpostを使ってデータを送信する方法と、PHPのgetを使ってWebページのデータを取得する方法のまとめ

PHPの関数urlencode()、urldecode()を解決する、 Web サイトアドレスの URL エンコードの問題 rawurlencode()、rawurldecode()

PHP 文字列エスケープ関数 (addslashes、stripslashes) の詳細な説明
  • PHP はパラメーターを含む現在のページの完全な URL アドレス関数を取得します
  • PHP Curl バッチマルチ-スレッド化されたオープン URL クラス
  • php は短い URL を生成します
  • PHP は、HTML ウェブページのコードを圧縮してネットワーク データ送信の量を減らし、スペース、タブ、およびコメント マークをクリアします
  • PHP は Curl 関数を使用して、マルチスレッドの Web ページのクローリングとファイルのダウンロードを実現します
  • http://www.bkjia.com/PHPjc/779411.html
www.bkjia.com

tru​​e

技術記事現在の URL は php を通じて取得されます。URL 内のパラメーターを抽出する必要がある場合はどうすればよいですか?このプロセスは実際には非常に簡単で、PHP の 2 つの組み込み関数、つまり par... を使用してスムーズに完了できます。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。