Cela ne seulement appliquer à l'esperluette dans les URLs, mais à toutes les caractères réservés . En voici quelques-unes :
# $ & + , / : ; = ? @ [ ]
L'idée est la même que celle de coder un &
dans un document HTML, mais le contexte a changé pour être dans l'URI, en plus d'être dans le document HTML. Ainsi, le codage en pourcentage évite les problèmes d'analyse syntaxique dans les deux contextes.
Cette fonction s'avère très utile lorsque vous devez placer une URL à l'intérieur d'une autre URL. Par exemple, si vous voulez publier un statut sur Twitter :
http://www.twitter.com/intent/tweet?status=What%27s%20up%2C%20StackOverflow%3F(http%3A%2F%2Fwww.stackoverflow.com)
Il y a beaucoup de caractères réservés dans mon Tweet, à savoir ?'():/
donc j'ai encodé la valeur entière de l'élément status
Paramètre URL. Ceci est également utile lorsque vous utilisez mailto:
qui ont un corps de message ou un sujet, parce que vous devez coder les body
y subject
pour que les sauts de ligne, les esperluettes, etc. restent intacts.
Lorsqu'un caractère du jeu réservé (un "caractère réservé") a une signification spéciale (un "but réservé") dans un certain contexte, et qu'un schéma URI indique qu'il est nécessaire d'utiliser ce caractère dans un autre but, alors le caractère réservé est utilisé. le caractère doit être codé en pourcentage. Codage en pourcentage d'un caractère réservé consiste à convertir le caractère en sa valeur d'octet correspondante en ASCII. valeur d'octet correspondante en ASCII, puis de représenter cette valeur sous la forme d'une paire de chiffres hexadécimaux. une paire de chiffres hexadécimaux. Ces chiffres, précédés du signe de pourcentage ("%"), qui est utilisé comme caractère d'échappement, sont ensuite utilisés dans l'URI à la place du caractère réservé. (Pour un caractère non ASCII, il est généralement généralement converti en sa séquence d'octets en UTF-8, puis chaque valeur d'octet est représentée comme ci-dessus). est représentée comme ci-dessus). Le caractère réservé "/", par par exemple, s'il est utilisé dans le composant "path" d'une URI, a la d'être un délimiteur entre les segments de chemin. Si, selon un schéma schéma URI donné, "/" doit figurer dans un segment de chemin d'accès, alors les trois caractères caractères "%2F" ou "%2f" doivent être utilisés dans le segment au lieu d'un "/" brut. "/".
http://en.wikipedia.org/wiki/Percent-encoding#Percent-encoding_reserved_characters