Estoy probando PHPurlencode()
vs Javajava.net.URLEncoder.encode()
.urlencode() el 'asterisco' (estrella?) Carácter
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);
Todos los personajes parecen estar codificado de la misma manera con las dos funciones, a excepción del carácter 'asterisco' que no está codificado por Java, y traducido a% 2A por PHP. ¿Qué comportamiento se supone que es el "correcto", si hay alguno?
Nota: probé con rawurlencode()
, también, no tuve suerte.
le he pedido a una [pregunta similar] (http://stackoverflow.com/questions/25085992/when-should-an-asterisk-be-encoded-in-an-http-url) a Intenta obtener una respuesta más completa. –