一個非常簡單的問題,在這裏可能已經解決了很多時間,但我沒有得到我想要的。如何將此網址轉換爲%20?
我有一個形象的網址是這樣的:
$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
是ofcourse你會告訴我,我可以使用進行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來只編碼部分網址。但是,目錄名稱也可能包含空格字符,因此僅轉換文件名在這裏也是不可能的。
實際上我想知道我們是否可以在不影響fullurl的'/'的情況下使用urlencode或rawurlencode。我不希望正則表達式的建議更高。
注意:併發症部分是URL路徑中'她的'目錄部分,目錄的級別也不固定。
@Rikesh我希望你能在回答之前閱讀整篇文章。 –
「str_replace」有什麼問題?爲什麼你不想使用它? – Bilal
但是,爲什麼只需要空格進行編碼? –