Ho bisogno di codificare l'URL solo il percorso della directory e il nome del file di un URL utilizzando PHP.urlencode solo i nomi di directory e file di un URL
Quindi voglio codificare qualcosa come http://example.com/file name
e ottenerlo in http://example.com/file%20name
.
Ovviamente, se lo faccio urlencode('http://example.com/file name');
, il risultato è http%3A%2F%2Fexample.com%2Ffile+name
.
L'ovvio (per me, comunque) la soluzione è quella di utilizzare parse_url()
di dividere l'URL nella schema, accoglienza, ecc e poi basta urlencode()
le parti che ne hanno bisogno come il percorso. Quindi, vorrei riassemblare l'URL utilizzando http_build_url()
.
Esiste una soluzione più elegante? O è fondamentalmente la strada da percorrere?
che sembra la soluzione più robusta per me. – Herbert
Per documentazione: urlencode è per la parte di query di un URL. rawurlencode per il percorso, ma assicurati di escludere le barre. –