Как кодировать URL-адрес с помощью php-подобных браузеров

У меня есть такой URL-адрес

http://www.example.com/Data/image/office-dôn-sì-à.jpg 

Я хочу скопировать этот файл на свой сервер, используя функцию копирования в php. Итак, первое, что нужно сделать, чтобы закодировать это (я думаю, браузеры делают то же самое)

 http://www.example.com/Data/image/office-d%C3%B4n-s%C3%AC-%C3%A0.jpg 

Но если я использую функцию urlencode , полный url будет закодирован

 http%3A%2F%2Fwww.example.com%2FData%2Fimage%2Foffice-d%C3%B4n-s%C3%AC-%C3%A0.jpg 

который больше не является URL-адресом, а не тем, что я хочу.

Любая помощь?

Итак, другие ответы здесь, по-видимому, в значительной степени проигнорировали ваш пост. Будем надеяться, что я не сделал то же самое.

Мне кажется, что вы хотите только кодировать базовое имя? Если это так, эта специальная функция должна сделать трюк:

 function encode_basename($url) { $url = explode('/', $url); $base = array_pop($url); return implode('/', $url) . '/' . urlencode($base); } //returns: http://www.example.com/Data/image/office-d%25C3%25B4n-s%25C3%25AC-%25C3%25A0.jpg