我在上面阅读了一些问题,他们使用rawurlencode
或percent encoding
来编码utf-8字符,但我发现了一些不同的例子:xn--pbt1by64f.lofter.com
和http://xn--wgv71a.com/
,这也将在浏览器地址栏中转换为utf-8字符串(例如温家宝.lofter.com
,日本.com
)。这显然不是百分比编码或只是urlencode
结果,这种编码方法是什么?
答案 0 :(得分:1)
它被称为“Punycode”:
在计算中,Punycode是一般编码语法的实例 (Bootstring)转换了一串Unicode字符 唯一且可逆地成为一个较小的,受限制的字符集。
Punycode用于编码标签 应用程序中的国际化域名(IDNA)框架等 这些域名可以用ASCII字符集表示 允许在Internet的域名系统中使用。编码语法 在IETF文档RFC 3492中定义。[1]
答案 1 :(得分:0)
这称为Internationalized domain name。
并检查php的IDN Functions