rawurlencode

(PHP 4, PHP 5, PHP 7)

rawurlencodeCodificar estilo URL de acuerdo al RFC 3986

Descripción

rawurlencode ( string $str ) : string

Codifica la cadena dada de acuerdo al » RFC 3986.

Parámetros

str

La URL a ser codificada.

Valores devueltos

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.

Historial de cambios

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.

Ejemplos

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%[email protected]/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">

Ver también