(PHP 4, PHP 5, PHP 7, PHP 8)
rawurlencode — Codificar estilo URL de acuerdo al RFC 3986
str
La URL a ser codificada.
Devuelve una cadena en donde todos los caracteres no-alfanuméricos,
excepto -_.~
, son reemplazados con un signo de
porcentaje (%
) seguido de dos dígitos hexadecimales.
Este es el tipo de codificación descrito en el » RFC 3986 para evitar que caracteres
literales sean interpretados como delimitadores de URL especiales, y para
evitar que las URLs sean modificadas por medios de transmisión con
conversiones de caracteres (como algunos sistemas de correo electrónico).
Nota:
Anterior a PHP 5.3.0, rawurlencode codificaba las tildes (
~
) usando » RFC 1738.
Versión | Descripción |
---|---|
5.3.4 | Los caracteres con tilde ya no son condificados al usar rawurlencode() con EBCDIC en cadenas. |
5.3.0 | Ahora sigue el » RFC 3986. |
Ejemplo #1 Inclusión de una contraseña en una URL FTP
<?php
echo '<a href="ftp://user:', rawurlencode('foo @+%/'),
'@ftp.example.com/x.txt">';
?>
El resultado del ejemplo sería:
<a href="ftp://user:foo%20%40%2B%25%2F@ftp.example.com/x.txt">
O, si pasa información en un componente PATH_INFO de la URL:
Ejemplo #2 Ejemplo 2 de rawurlencode()
<?php
echo '<a href="http://example.com/department_list_script/',
rawurlencode('sales and marketing/Miami'), '">';
?>
El resultado del ejemplo sería:
<a href="http://example.com/department_list_script/sales%20and%20marketing%2FMiami">