php urlencode() 関数は URL エンコーディング分析を実装します_PHP チュートリアル
phpでは、urlencode()関数は中国語を文字列エンコードに変換するもので、ブラウザで開いたときに中国語のURLが文字化けしたり間違ったりすることはありません。urlencode()を使用したエンコードをいくつか紹介します。具体的な詳細。
URLコード
(PHP 4、PHP 5)
urlencode — URL 文字列をエンコードする
バグを報告する 説明
文字列 urlencode (文字列 $str)
この機能を使用すると、文字列をエンコードして URL のリクエスト部分で使用することが簡単になり、次のページに変数を渡すことも簡単になります。
バグパラメータを報告する
ストラ
エンコードする文字列。
戻り値のバグを報告する
-_ を除くすべての非英数字文字がパーセント記号 (%) に置き換えられ、その後に 2 つの 16 進数が続き、スペースがプラス記号 (+) としてエンコードされた文字列を返します。このエンコーディングは、WWW フォーム POST データのエンコーディングと同じであり、application/x-www-form-urlencoded メディア タイプと同じエンコーディングです。歴史的な理由により、このエンコードは、スペースをプラス記号 (+) としてエンコードする点で RFC1738 エンコード (rawurlencode() を参照) とは異なります。
URLエンコードとは:
このツールは、それぞれエンコードとデコードの 2 つのメソッドを実装します。
中国語 -> GB2312 のエンコード -> %D6%D0%CE%C4
中国語 -> UTF-8 エンコード -> %E4%B8%AD%E6%96%87
HTML で URL エンコード:
GB2312としてエンコードされたHTMLファイルでは、
/中文.rar -> ブラウザは自動的に /%D6%D0%CE%C4.rar に変換します。
注: Firefox はデフォルトで UTF-8 エンコードで URL を送信するため、GB2312 エンコードで中国語の URL を適切にサポートしていませんが、私が試した ftp:// プロトコルは問題ないと考えられます。 Firefox
/中文.rar -> ブラウザは自動的に /%E4%B8%AD%E6%96%87.rar
に変換します。
コードをコピー | |
//GB2312のエンコード
echo urlencode("中文-_. ")."n"; //%D6%D0%CE%C4-_.+ |
urlencode と rawurlencode の違い:
urlencode はスペースをプラス記号 (+) としてエンコードします
rawurlencode はスペースをプラス記号 (%20) としてエンコードします
UTF-8 エンコードを使用したい場合は、2 つの方法があります:
1. ファイルを UTF-8 ファイルとして保存し、urlencode または rawurlencode を直接使用します。
2. mb_convert_encoding 関数を使用します。
コードをコピー | |
$url = ‘/中文.rar’;
echo urlencode(mb_convert_encoding($url, ‘utf-8’, ‘gb2312’)).”n”; |
コードをコピー | |
関数parseurl($url=””)
{ |
コードは次のとおりです | コードをコピー |
%E4%B8%AD%E6%96%87-_.%20%E4%B8%AD%E6%96%87-_.%20 |
encodeURI は、「:」、「/」、「;」、「?」、「@」、およびその他の特殊文字をエンコードしません。
コードは次のとおりです | コードをコピー |
/%E4%B8%AD%E6%96%87.rarhttp%3A%2F%2Fud03.kinoko.name%2F%E4%B8%AD%E6%96%87.rar |
注:
注: HTML エンティティに一致する変数には注意してください。 &、©、£ などの文字はブラウザによって解析され、予期される変数名の代わりに実際のエンティティが使用されます。これは明らかな混乱であり、W3C は数年にわたって人々にこのことについて警告してきました。参照アドレス: » http://www.w3.org/TR/html4/appendix/notes.html#h-B.2.2。
PHP は、arg_separator.ini ディレクティブを通じて、パラメーター区切り文字を W3C が推奨するセミコロンに変更することをサポートしています。残念ながら、ほとんどのユーザー エージェントはフォーム データをセミコロン区切り形式で送信しません。より簡単な解決策は、区切り文字として & の代わりに & を使用することです。このために PHP の arg_separator を変更する必要はありません。このままにして、htmlentities() または htmlspecialchars() を使用して URL をエンコードします。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
