java星号 for_java – urlencode()’星号'(星号)字符

我正在测试PHP urlencode()与Java java.net.URLEncoder.encode()。

Java的

String all = "";

for (int i = 32; i < 256; ++i) {

all += (char) i;

}

System.out.println("All characters: -||" + all + "||-");

try {

System.out.println("Encoded characters: -||" + URLEncoder.encode(all, "utf8") + "||-");

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

}

PHP

$all = "";

for($i = 32; $i < 256; ++$i)

{

$all = $all.chr($i);

}

echo($all.PHP_EOL);

echo(urlencode(utf8_encode($all)).PHP_EOL);

所有字符似乎都以与这两种功能相同的方式编码,除了未由Java编码的“星号”字符,并由PHP翻译成*。哪个行为应该是“正确的”呢?

注意:我也尝试使用rawurlencode() – 没有运气。


版权声明:本文为weixin_42517963原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。