Encode une chaîne en URL en PHP

WRInaute accro
Hello,

j'ai un petit soucis pour l'encodage de chaîne url.

deux fonctions PHP se présente à moi:

rawurlencode()
urlencode()

je ne comprend pas bien la différence...
apparement seul l'espace devient un + avec urlencode()..

quoi utiliser ?
pariel pour decoder les url ...

arf !
 
Nouveau WRInaute
Oui en effet, seul le codage de l'espace diffère.

(Pour m'en convaincre j'ai testé le script php suivant:
Code:
$strOut='';
for($i=0;$i<=255;$i++)
{
	$strChr=chr($i);
	if( urlencode($strChr)!=rawurlencode($strChr))
	{
		$strOut.='<b>-------------------></b>';
	}
	$strOut.='ASCII:' .$i.' / CHR:'.$strChr.' / URL:'.urlencode($strChr).' / RAW:'. rawurlencode($strChr).'<br/>';
	
}
echo $strOut;
)

Par habitude j'utilise urlencode mais je pense qu'il vaut mieux utiliser rawurlencode. D'ailleurs FireFox code les espaces en %20, de même que msie.
 
Discussions similaires
Haut