我試圖從維基百科得到這個刮圖像。 免費授權媒體有什麼好處如果你不能得到它?原始腳本是here。php file_put_contents亞洲字符文件名編碼
如果你把這個
在Firefoxhttp://upload.wikimedia.org/wikipedia/commons/2/26/%E7%9A%84-bw.png
,它會立即轉化成
http://upload.wikimedia.org/wikipedia/commons/ 2/26 /的-bw.png
以便保存圖像時將其保存爲-bw.png
足夠簡單了嗎?現在如何讓PHP來做到這一點?只是猜測,我試過utf8_decode($文件名)..但得到錯誤的中文字符。
$src= "http://upload.wikimedia.org/wikipedia/commons/2/26/%E7%9A%84-bw.png";
$pngData = file_get_contents($src);
$fileName = basename($src);
file_put_contents($fileName, $pngData);
任何幫助表示讚賞,因爲我真的不知道該從哪裏出發。
BRR ..是的,試過了,仍然得到了錯誤的字符。我從$ src中複製url,粘貼到firefox中,然後使用正確的文件名獲取文件。用PHP,我得到了相同的文件,但有不同的文件名,另一箇中文字符。更新了問題.. – Slabo
來思考它,我想你已經回答了我的問題。至少讓我指向正確的方向。我將重新解釋這個問題併發佈一個新的。**它是urldecode()而不是url_decode();順便說一下** – Slabo
所以我會做的是獲得它的標題部分,然後在該部分運行urldecode。檢查上面編輯過的代碼(不知道它是否會工作,沒有測試,然後確保你使用的是utf8或類似的東西,這樣字符不會與ASCII字符混淆 – Ben