インターネットの普及に伴い、データ送信はますます一般的になってきています。ネットワーク通信では、一部のデータを URL で認識できる形式に変換する必要があることが多く、これには URL エンコードの概念が導入されます。 PHP 言語には、URL エンコードの実装に大きな役割を果たす豊富な組み込み関数ライブラリもあります。
1. URLエンコーディングの概念
URLの正式名称は英語でUniform Resource Locator(Uniform Resource Locator)といい、インターネット上のリソースを識別するアドレスであり、一般的には次のようになります。プロトコルヘッダー、ドメイン名、パスなど。 URL エンコードとは、URL の特殊文字を認識可能な形式にエンコードすることです。
言語ごとに実装される URL エンコード方法は異なりますが、アドレス自体との混同を避けるために、URL 内の特殊文字はすべてエスケープまたは置換されます。
2. URL エンコードにおける一般的な特殊文字
一般的な URL 特殊文字は次のとおりです:
3. PHP の URL エンコード関数
PHP には、urlencode()、rawurlencode()、urlencode()、http_build_query() など、多くの URL エンコード関数があります。 。以下では、URL エンコードを実装するさまざまな方法を見てみましょう。
urlencode() 関数は、PHP の組み込み URL エンコード関数です。 URL 内の文字をエンコードし、URL 内の特殊文字を特定の文字列に置き換えます (たとえば、「 」はスペースなどを表します)。
次は、urlencode() 関数の構文です。
string urlencode ( string $str )
説明:
$str: エンコードする必要がある文字列。
次は、urlencode() 関数の使用例です:
<?php $str = "编码和解码 URL 中的字符串"; echo urlencode($str); ?>
出力結果:
%E7%BC%96%E7%A0%81%E5%92%8C%E8%A7%A3%E7%A0%81%20URL%20%E4%B8%AD%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2
string rawurlencode ( string $str )
<?php $str = "编码和解码 URL 中的字符串"; echo rawurlencode($str); ?>
%E7%BC%96%E7%A0%81%E5%92%8C%E8%A7%A3%E7%A0%81%20URL%20%E4%B8%AD%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2
string http_build_query ( mixed $query_data [, string $numeric_prefix = NULL [, string $arg_separator = NULL [, int $enc_type = PHP_QUERY_RFC1738 ]]] )
<?php $data = array( 'name' => 'Alice', 'age' => 25, 'address' => 'New York' ); echo http_build_query($data); ?>
name=Alice&age=25&address=New+York
以上がPHP で URL エンコーディングを実装するいくつかの方法の簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。