您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)HTML中URLEncode中怎么實(shí)現(xiàn)的,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
LEncode:是指針對(duì)網(wǎng)頁(yè)url中的中文字符的一種編碼轉(zhuǎn)化方式,最常見(jiàn)的就是Baidu、Google等搜索引擎中輸入中文查詢時(shí)候,生成經(jīng)過(guò)Encode過(guò)的網(wǎng)頁(yè)URL。URLEncode的方式一般有兩種,一種是傳統(tǒng)的基于GB2312的Encode(Baidu、Yisou等使用),另一種是基于UTF-8的Encode(Google、Yahoo等使用)。下面億速云小編來(lái)講解下HTML中的URLEncode怎么實(shí)現(xiàn)?PHP中的URLEncode怎么實(shí)現(xiàn)?
HTML中的URLEncode怎么實(shí)現(xiàn)
編碼為GB2312的html文件中:http://s.jb51.net/中文.rar->瀏覽器自動(dòng)轉(zhuǎn)換為->http://s.jb51.net/%D6%D0%CE%C4.rar
注意:Firefox對(duì)GB2312的Encode的中文URL支持不好,因?yàn)樗J(rèn)是UTF-8編碼發(fā)送URL的,但是ftp://協(xié)議可以,我試過(guò)了,我認(rèn)為這應(yīng)該算是Firefox一個(gè)bug。
編碼為UTF-8的html文件中:http://s.jb51.net/中文.rar->瀏覽器自動(dòng)轉(zhuǎn)換為->http://s.jb51.net/%E4%B8%AD%E6%96%87.rar。
PHP中的URLEncode怎么實(shí)現(xiàn)
//GB2312的Encode
echourlencode("中文-_.")."\n";//%D6%D0%CE%C4-_.+
echourldecode("%D6%D0%CE%C4-_.")."\n";//中文-_.
echorawurlencode("中文-_.")."\n";//%D6%D0%CE%C4-_.%20
echorawurldecode("%D6%D0%CE%C4-_.")."\n";//中文-_.
>
除了“-_.”之外的所有非字母數(shù)字字符都將被替換成百分號(hào)“%”后跟兩位十六進(jìn)制數(shù)。
urlencode和rawurlencode的區(qū)別:urlencode將空格編碼為加號(hào)“+”,rawurlencode將空格編碼為加號(hào)“%20”。
假如要使用UTF-8的Encode,有兩種方法:
一、將文件存為UTF-8文件,直接使用urlencode、rawurlencode即可。
二、使用mb_convert_encoding函數(shù):
$url='http://s.jb51.net/中文.rar';
echourlencode(mb_convert_encoding($url,'utf-8','gb2312'))."\n";
echorawurlencode(mb_convert_encoding($url,'utf-8','gb2312'))."\n";
//http%3A%2F%2Fs.jb51.net%2F%E4%B8%AD%E6%96%87.rar
>
實(shí)例:
functionparseurl($url="")
{
$url=rawurlencode(mb_convert_encoding($url,'gb2312','utf-8'));
$a=array("%3A","%2F","%40");
$b=array(":","/","@");
$url=str_replace($a,$b,$url);
return$url;
}
$url="ftp://ud03:password@s.jb51.net/中文/中文.rar";
echoparseurl($url);
//ftp://ud03:password@s.jb51.net/%D6%D0%CE%C4/%D6%D0%CE%C4.rar
>
JavaScript中的URLEncode:
如:%E4%B8%AD%E6%96%87-_.%20%E4%B8%AD%E6%96%87-_.%20
encodeURI不對(duì)下列字符進(jìn)行編碼:“:”、“/”、“;”、“”、“@”等特殊字符。
上述就是小編為大家分享的HTML中URLEncode中怎么實(shí)現(xiàn)的了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。