Winston Smith Winston Smith - 7 months ago 78
PHP Question

php urlencode - encode only the filename and dont touch the slashes file [that] needs "to" be (encoded).zip

the problem is that urlencode will also encode the slashes which makes the URL unusable. How can i encode just the last filename ?


Try this:

$str = ' file [that] needs "to" be (encoded).zip';
$pos = strrpos($str, '/') + 1;
$result = substr($str, 0, $pos) . urlencode(substr($str, $pos));

You're looking for the last occurrence of the slash sign. The part before it is ok so just copy that. And urlencode the rest.