ホームページ >バックエンド開発 >PHPチュートリアル >rawurlencode() 関数と urlencode() 関数の違いの簡単な分析_PHP チュートリアル

rawurlencode() 関数と urlencode() 関数の違いの簡単な分析_PHP チュートリアル

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-07-13 17:08:441112ブラウズ

この記事では、rawurlencode() 関数と urlencode() 関数の違いと使い方を紹介します。

今日、オープンソースコードを読んでいると、URL エンコード関数 rawurlencode() を発見しました。普段の開発では主に urlencode() を使っていたので、これまで気付かなかったので、特別に勉強してみました。

実際、これら 2 つの関数の違いは非常に単純です。どちらも URL 内の英語以外の文字をエスケープし、その後に 2 つの 16 進数が続くものに置き換えます。 違いは、rawurlencode が 1994 International に準拠していることです。コード 標準メモ RFC 1738 によると、スペースのエスケープは '%20' であり、urlencode のエンコーディングは、POST フォーム データと同じようにスペースを "+" 記号にエスケープする従来の方法を実装しています。

例:
URL アドレス ソースが次の形式の場合: http://www.bKjia.c0m エンコードの違い
rawurlencode($url):
http%3A%2F%2Fityizhan.com%2FPHP%20%E7%BC%96%E7%A0%81%E5%8C%BA%E5%88%AB%2B
URLコード($url):
http%3A%2F%2Fityizhan.com%2FPHP+%E7%BC%96%E7%A0%81%E5%8C%BA%E5%88%AB%2B

この 2 つの違いは、エンコードされた URL をデコードしたい場合、rawurldecode() と urldecode() の 2 つの関数を使用することができます。実際の開発で URL 形式の不一致を避けるために、rawurlencode() を使用して URL をエンコードすることをお勧めします。

同じ操作には Javascript のいくつかの違いもあります。JavaScript の URL エンコードとデコードを参照してください。これは、JavaScript でのエスケープ()、encodeURI()、encodeURIComponent() のエンコードの使用方法について説明しています

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/629826.html技術記事この記事では、rawurlencode() 関数と urlencode() 関数の違いと使い方を紹介します。 今日、オープンソース コードを読んでいるときに、URL エンコード関数 ra...
を発見しました。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。