ホームページ >バックエンド開発 >PHPチュートリアル >PHP は URL パラメータをエンコードおよびデコードします
1. URL によって渡されるパラメータをエンコードする
URL を使用してパラメータ データを渡すとは、URL アドレスの後に適切なパラメータを追加することを意味します。 URL エンティティはこれらのパラメータを処理します。使用方法は次のとおりです:
明らかに、この方法ではパラメーターが公開され、安全係数が低くなります。したがって、この章では、この問題に対する URL エンコード方法、つまり URL によって渡されるパラメーターをエンコードする方法について説明します。
URL エンコーディングは、ブラウザーがフォーム入力データをパッケージ化するために使用する形式で、アドレス バーを使用してパラメーターを渡すためのエンコーディング ルールです。パラメータにスペースが含まれている場合、URL を使用してパラメータを渡すとエラーが発生します。これにより、スペースは %20 に変換されます。 中国語のエンコードも童謡の例です。最も重要な点は、それが渡されるパラメータの中で隠れた役割を果たしているということです。
推奨マニュアル: php完全独習マニュアル
PHPのquery文字列のURLエンコードは、urlencode()関数を通じて実現できます。 関数の構文は次のとおりです。
urlencode(string )urlencode() 関数は、文字列の URL エンコードを実装します。
次の例では、urlencode() 関数を使用して、URL によって渡されるパラメーター値をエンコードします。表示される文字列は、URL でエンコードされた文字列です。<?php $url = urlencode('PHP中文网'); //把 PHP中文网 进行编码 echo "index.php?id=".$url; ?>ブラウザーで次のように入力します。実行中のアドレスを入力して Enter を押すと、以下に示す実行結果が表示されます:
index.php?id=PHP%E4%B8%AD%E6%96%87%E7%BD%91
手順:
サーバーにとっては、エンコード前後の文字列に違いはなく、自動的に認識できます。ここでの主な目的は、URL エンコードの使用方法を説明することです。実際のアプリケーションでは、一部の非機密パラメータはエンコードする必要がなく、リーダーは実際の状況に応じてそれらを選択して使用できます。 2. URL によって渡されたパラメータをデコードします$_GET[] メソッドを使用して、URL によって渡されたパラメータを直接取得できます。 URL 暗号化されたクエリ文字列の場合、取得された文字列は urldecode() 関数を通じてデコードされる必要があります。この関数の構文は次のとおりです:
urldecode(string)urldecode() 関数は、URL エンコードされた文字列 string をエンコードできます。
上記の例では、urlencode() 関数は「PHP 中国語 Web サイト」をエンコードし、「PHP%E4%B8%AD%E6%96%87%E7%BD%91」
に変換します。ここの例では、urlencode()関数を使用して、取得したエンコーディングをデコードし、デコード結果を出力します。実装されたコードは次のとおりです:
<?php $url = urldecode("PHP%E4%B8%AD%E6%96%87%E7%BD%91"); // 把编码还原成 PHP中文网 echo $url; ?>実行結果は次のとおりです:
PHP 中国語の Web サイト
ここでは、urldecode() 関数が、urlencode() 関数によってエンコードされた文字列をエンコードしていることが明確にわかります。
おすすめ関連記事:
1.PHP は URL エンコードを実行するために urlencode() 関数をどのように使用しますか? (コード例)
2.
PHP は URL 内の中国語の文字をどのようにエンコードおよびデコードしますか? (写真 + ビデオ) 関連ビデオの推奨:
1.Dugu Jiijian (4)_PHP ビデオ チュートリアル
以上がPHP は URL パラメータをエンコードおよびデコードしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。