1

小さな問題があります... php 関数を使用して utf8 文字列を変換するとAndré、php 関数のように url encode('André') が Andr%C3%A9 を返します。

しかし、w3school ref テーブルを見ると、é の適切な urlencode は %E9 です...

ここを参照してください: www.w3schools.com/tags/ref_urlencode.asp

PHPで適切なURLエンコード文字列を取得するにはどうすればよいですか?

4

3 に答える 3

1

違いは、w3schools のエンコードされた参照値は iso-8859-1 エンコードであるのに対し、あなたのバージョンは utf-8 を使用してエンコードされていることです。vvr02 の例は重要ではありません。HTML ドキュメントに表示されるエンコーディングは、ファイルの保存時に使用されるエンコーディングには影響しないからです。

ファイルが UTF-8 形式で保存されているバージョンは é の utf-8 表現を返しますが、iso-8859-1 (または同様のもの) で保存されている vvr02 のバージョンは é の iso-8859-1 表現を返します.

文脈によっては、どちらも正しいです。

于 2013-01-11T11:55:37.480 に答える
0

ちょうど今、私はそれが正しい休息を与えていることを確認しました. これが "Andr%E9" を与えるものです

 <!DOCTYPE html>
<html><head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body>
<?php
    echo urlencode("André");
?>
</body>
</html>
于 2013-01-11T11:48:57.480 に答える
-1

Andr%E9 は、Andr%C3%A9 よりも「正しく」ありません。人々が説明したように、それはドキュメントのエンコーディングに関係しているだけで、メタ タグまたは HTTP ヘッダーによって設定できます。

于 2013-01-11T12:24:20.320 に答える