url encode bildiğim kadarıyla şunu önler:
GET ile gönderilecek varsayılan değer: Ali & Mehmet
Normalde olması gereken adres: index.php?kimler=Ali & Mehmet
Ama "&" işareti özel bir işarettir, bu yüzden PHP şöyle algılayacak
$_GET['kimler'] = 'Ali ';
$_GET[' Mehmet'] = null;
Tabi bu bir örnek, diğer UTF-8 olan ama latin olmayan karakterleri de düzeltecektir(ö'yü oe yapmamız gibi ama "%20" tarzı çevirecek)
urldecode() ile çevrilmişleri geri kazanacaksın, benim aklımda şöyle bir şey var ama hiç kullanmadım, zararlı da olabilir
function duzenle(&$d=array()) {
if( !is_array($d) ) { return array(); }
foreach($d as $k => $v) { if( is_array($v) { $d[$k] = duzenle($v); } else { $d[$k] = urldecode($v); } }
return $d;
}
$_GET = duzenle($_GET);