urlencode только каталог и имена файлов URL-адреса

Мне нужно, чтобы URL-адрес закодировал только путь к каталогу и имя файла URL-адреса с помощью PHP.

Итак, я хочу закодировать что-то вроде http://example.com/file name и получить в результате http://example.com/file%20name .

Конечно, если я использую urlencode ('http://example.com/file name'); , то в итоге получаю http% 3A% 2F% 2Fexample.com% 2Ffile + имя .

Очевидное (в любом случае для меня) решение - использовать parse_url () для разделения URL-адреса на схему, хост и т. Д., А затем просто urlencode () части, которые он нужен как путь. Затем я собирал URL заново, используя http_build_url () .

Есть ли более элегантное решение, чем это? Или это, в основном, выход?

11
задан Trott 1 July 2014 в 16:02
поделиться