Perliamoci chiaro, è una vera Babele.
in
http://www.isidoroghezzi.net/XMLHttpRequest.html

eseguo il seguente test, da JavaScript, via AJAX (metodo POST) scrivo su un file su server, lo rileggo e lo rispedisco indietro. Ho eseguito tutte le combinazioni tra encodeURIComponent e decode vari in JavaScript, stripslash htmlenities ecc via PHP.

Sembra una coperta troppo piccola, ti copri da una parte, ti scopri dall'altra. Alla fine la miglior soluzione esclude il carattere percentuale. (Da notare che invece funziona ad esempio con parole giapponesi, cinesi ecc..).

Concludo: è una vera Babele. Costruita dall'uomo.

EDIT: il mio obbiettivo era quello di trasformare caratteri "pericolosi" (<$&>|[]{}",')