php的urlencode()URL编码函数浅析_php技巧
URLEncode的方式一般有两种,一种是传统的基于GB2312的Encode(Baidu、Yisou等使用),另一种是基于UTF-8的Encode(Google、Yahoo等使用)。
本工具分别实现两种方式的Encode与Decode:
中文 -> GB2312的Encode -> %D6%D0%CE%C4
中文 -> UTF-8的Encode -> %E4%B8%AD%E6%96%87
Html中的URLEncode:
编码为GB2312的html文件中:http://s.jb51.net/中文.rar -> 浏览器自动转换为 -> http://s.jb51.net/%D6%D0%CE%C4.rar
注意:Firefox对GB2312的Encode的中文URL支持不好,因为它默认是UTF-8编码发送URL的,但是ftp://协议可以,我试过了,我认为这应该算是Firefox一个bug。
编码为UTF-8的html文件中:http://s.jb51.net/中文.rar -> 浏览器自动转换为 -> http://s.jb51.net/%E4%B8%AD%E6%96%87.rar
PHP中的URLEncode:
//GB2312的Encode
echo urlencode("中文-_. ")."\n"; //%D6%D0%CE%C4-_.+
echo urldecode("%D6%D0%CE%C4-_. ")."\n"; //中文-_.
echo rawurlencode("中文-_. ")."\n"; //%D6%D0%CE%C4-_.%20
echo rawurldecode("%D6%D0%CE%C4-_. ")."\n"; //中文-_.
?>
除了“-_.”之外的所有非字母数字字符都将被替换成百分号“%”后跟两位十六进制数。
urlencode和rawurlencode的区别:urlencode将空格编码为加号“+”,rawurlencode将空格编码为加号“%20”。
如果要使用UTF-8的Encode,有两种方法:
一、将文件存为UTF-8文件,直接使用urlencode、rawurlencode即可。
二、使用mb_convert_encoding函数:
$url = 'http://s.jb51.net/中文.rar';
echo urlencode(mb_convert_encoding($url, 'utf-8', 'gb2312'))."\n";
echo rawurlencode(mb_convert_encoding($url, 'utf-8', 'gb2312'))."\n";
//http%3A%2F%2Fs.jb51.net%2F%E4%B8%AD%E6%96%87.rar
?>
实例:
function parseurl($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";
echo parseurl($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不对下列字符进行编码:“:”、“/”、“;”、“?”、“@”等特殊字符。
如:http://s.jb51.net/%E4%B8%AD%E6%96%87.rarhttp%3A%2F%2Fs.jb51.net%2F%E4%B8%AD%E6%96%87.rar

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Cara menyelesaikan pengecualian penyahkodan URL dalam pembangunan Java Dalam pembangunan Java, kami sering menghadapi situasi di mana URL perlu dinyahkod. Walau bagaimanapun, disebabkan kaedah pengekodan yang berbeza atau rentetan URL bukan standard, keabnormalan penyahkodan URL kadangkala berlaku. Artikel ini akan memperkenalkan beberapa pengecualian penyahkodan URL biasa dan penyelesaian yang sepadan. 1. Punca pengecualian penyahkodan URL adalah ketidakpadanan dalam kaedah pengekodan: aksara khas dalam URL perlu dikodkan URL, iaitu, ditukar kepada nilai perenambelasan bermula dengan %. Apabila penyahkodan, anda perlu menggunakan

Gunakan fungsi urllib.parse.quote() untuk mengekod URL dalam Python3 Parameter mungkin mengandungi aksara khas. Modul urllib.parse dalam Python menyediakan fungsi petikan(), yang boleh mengekod aksara haram dalam URL ke dalam rentetan URL sah. Artikel ini akan dilalui

Bagaimana untuk menggunakan fungsi PHP untuk pengekodan dan penyahkodan URL? Dalam PHP, pengekodan dan penyahkodan URL adalah operasi yang sangat biasa. Pengekodan URL menukar aksara khas dalam URL kepada nilai yang dikodkan yang sepadan dengan aksara khas biasa termasuk ruang, garis miring, tanda soal, dsb. Penyahkodan URL menukar nilai yang dikodkan kembali kepada aksara khas asal. PHP menyediakan satu siri fungsi untuk melaksanakan fungsi pengekodan dan penyahkodan URL Artikel ini akan memperkenalkan fungsi urlencode() dan urldecode() yang biasa digunakan dan memberikan contoh kod yang sepadan.

Fungsi urlencode() PHP: Bagaimana untuk mengekod rentetan ke dalam format selamat URL, contoh kod khusus diperlukan Dengan perkembangan Internet, URL digunakan secara meluas dalam kehidupan seharian, dan kita sering perlu mengekod rentetan dengan beberapa aksara khas. ke dalam format selamat URL untuk menghantar parameter dalam URL atau meminta halaman web. PHP menyediakan fungsi urlencode() untuk menyelesaikan tugas ini. Artikel ini akan memperkenalkan penggunaan fungsi urlencode() dan memberikan beberapa contoh kod khusus. 1. ur

Cara menggunakan fungsi urllib.parse.urlencode() untuk mengekod parameter dalam Python3.x Apabila melakukan pengaturcaraan rangkaian atau membuat permintaan HTTP, selalunya perlu mengekod parameter dalam URL. Modul urllib dalam Python menyediakan fungsi urlencode() yang mudah untuk mengekod parameter URL. Artikel ini akan memperkenalkan cara menggunakan fungsi urllib.parse.urlencode() dalam Python3.x

Cara menggunakan fungsi urllib.quote() untuk mengekod URL dalam URL Python 2.x mengandungi pelbagai aksara, termasuk huruf, nombor, aksara khas, dsb. Untuk membolehkan URL dihantar dan dihuraikan dengan betul, kita perlu mengekodkan aksara khas di dalamnya. Dalam Python2.x, anda boleh menggunakan fungsi urllib.quote() untuk mengekod URL Mari perkenalkan penggunaannya secara terperinci di bawah. urllib.quote

Contoh kod khusus menggunakan fungsi urlencode() dalam PHP untuk mengekod URL adalah seperti berikut: <?php//Tentukan URL untuk dikodkan$url="https://www.example.com/search?q =Pertanyaan Cina ";//Encode URL $encodedUrl=urlencode($url);echo" sebelum mengekod

Gunakan fungsi encodeURI dalam JavaScript untuk mengekod URL Kami boleh menunjukkannya dengan contoh kod berikut: //original URLconsturlString="https://www.example.com/path/file.html?parameter=value¶meter2=value 2" ;//Gunakan fungsi encodeURI untuk mengekod URL yang dikodekan
