urlencode函數將傳入的字串參數進行URL編碼。其傳回的字串中除了「ˉ—.」之外,所有非字母數字字元都被替換成百分號(%)後跟兩位十六進制數,空格則編碼為加號( )。此函數便於將字串編碼並將其用於URL的請求部分,同時也便於將變數傳遞給下一頁。
URLEncode:是指針對網頁url中的中文字元的一種編碼轉換方式,最常見的就是Baidu、Google等搜尋引擎中輸入中文查詢時候,產生經過Encode過的網頁URL。 URLEncode的方式一般有兩種一種是傳統的基於GB2312的Encode(Baidu、Yisou等使用),一種是 基於UTF-8的Encode(Google,Yahoo等使用)。本工具分別實現兩種方式的Encode與Decode。
編碼為GB2312的html檔案中,http://www.nowamagic.net/中文.rar -> 瀏覽器自動轉換為-> http://www.nowamagic.net/����.rar
注意:Firefox對GB2312的Encode的中文URL支援不好,因為它預設是UTF-8編碼發送URL的,但是ftp://協定可以。
編碼為UTF-8的html檔案中,http://www.nowamagic.net/中文.rar -> 瀏覽器自動轉換為-> http://www.nowamagic.net/中文.rar
PHP中的URLEnncode:
<ol><li>
<br><code><br><li>
<br><code><br><li>
<br><code><li>
<br><?php <li>
</li>
//GB2312的Encode echo rawurlencode("中文-_. ")."n "; //����-_. echo rawurldecode("����-_. ")."n"; //中文-_. ?>
複製程式碼
urlencode和rawurlencode的差別:
echo rawurlencode(mb_convert_encoding($url, 'utf-8', 'gb2312')). n"; //http://www.nowamagic.net/中文.rar ?> 複製代碼
實例:
JavaScript中的URLEncode: 中文-_. 中文-_. ,encodeURI 不會對下列字元進行編碼:「:」、「/」、「;」、「?」、「@」等特殊字元。
|