Очень простая проблема, которая могла быть решена здесь много времени, но я не получаю то, что хочу.Как преобразовать этот URL-адрес в% 20?
У меня есть URL изображения, как это:
$image = 'http://perfumepalace.arctechsolution.com/image/cache/data/another/For Her/Believe 100ml EDP-150x150.jpg';
и хотите выход в таком виде
http://perfumepalace.arctechsolution.com/image/cache/data/another/For%20Her/Believe%20100ml%20EDP-150x150.jpg
Да конечно вы сказать мне, что я могу использовать UrlEncode или rawurlencode. Поверь мне, я пробовал и до сих пор не повезло.
С UrlEncode я получаю как этот
http%3A%2F%2Fperfumepalace.arctechsolution.com%2Fimage%2Fcache%2Fdata%2Fanother%2FFor+Her%2FBelieve+100ml+EDP-150x150.jpg
И с rawurlencode я получил такой вывод:
http%3A%2F%2Fperfumepalace.arctechsolution.com%2Fimage%2Fcache%2Fdata%2Fanother%2FFor%20Her%2FBelieve%20100ml%20EDP-150x150.jpg
С str_replace
я могу получить именно то, что я хочу, как это:
str_replace('+', '%20', $image);
: http://perfumepalace.arctechsolution.com/image/cache/data/another/For%20Her/Believe%20100ml%20EDP-150x150.jpg
но я хочу получить их с помощью urlencode или rawurlencode. Но эти функции кодируют даже косую черту/часть.
Есть ли способ URL кодировать только пробелы в URL-адресе?
Редактировать: Да, я могу использовать basename() или pathinfo для кодирования только части URL. Но имя каталога также может содержать символ пробела, поэтому преобразование только имени файла также не является возможным.
И на самом деле я хочу знать, можем ли мы использовать urlencode или rawurlencode в полном URL-адресе, не затрагивая '/' fullurl. Я не хочу, чтобы предложения регулярного выражения были выше.
Примечание: Часть усложнения заключается в том, что раздел каталога «Для нее» в URL-адресе и уровень каталога также не исправлены.
@Rikesh Надеюсь, вы прочитаете все сообщение перед ответом. –
В чем проблема с 'str_replace'? Почему вы не хотите его использовать? – Bilal
Но зачем нужны только пробелы для кодирования? –