Rumah pembangunan bahagian belakang tutorial php 关于curl抓取回来的网页中中文乱码的有关问题

关于curl抓取回来的网页中中文乱码的有关问题

Jun 13, 2016 am 10:48 AM
code encoding str

关于curl抓取回来的网页中中文乱码的问题!
目前使用这个函数进行转码:
function safeEncoding($str){
$code=mb_detect_encoding($str,array('ASCII','GB2312','GBK','UTF-8'));//检测字符串编码
if($code=="CP936"){
$result=$str;
}
else{
//$result=mb_convert_encoding($str,'UTF-8',$code);//将编码$code转换为utf-8编码
$result=iconv($code,"UTF-8",$str);
}
  return $result;
}
可是还是有问题,遇到有些明明charset写着gb2312的抓回来还是乱码,请教高手,curl到底该怎么全面的进行转码呢?就是把gbk,gb2312等网页常用格式转成utf8的。

------解决方案--------------------
把你的文件编码转换下试试!
------解决方案--------------------
EUC-CN是GB 2312最常用的表示方法。浏览器编码表上的“GB2312”,通常都是指“EUC-CN”表示法。
这不是关键!
你需要的是 把gbk,gb2312等网页常用格式转成utf8的
而你的代码正好没有这样做

if(! mb_check_encoding($str, 'utf-8')) {
$str = mb_convert_encoding($str,'UTF-8','gbk');
}

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Edit projek Unity anda dalam Visual Studio Code dan anda kini bersedia untuk pergi Edit projek Unity anda dalam Visual Studio Code dan anda kini bersedia untuk pergi Aug 08, 2023 am 10:21 AM

Microsoft telah mengeluarkan versi pratonton sambungan Unity untuk Kod Visual Studio. Sambungan Unity baharu ini akan membolehkan anda menulis dan menyahpepijat permainan Unity. Sambungan Unity baharu ini membawa beberapa ciri popular yang sudah tersedia dalam Visual Studio dan Alat Visual Studio untuk Perpaduan, menjadikan C# dalam Kod Visual Studio lebih baik untuk pembangunan Unity. Pada masa ini, sambungan Unity untuk VSCode menyediakan yang berikut: Penyahpepijat Unity untuk menyahpepijat editor Unity dan pemain Unity anda. Penganalisis dan pemfaktoran semula C# khusus perpaduan. Uni

Bagaimana untuk menangani UnsupportedEncodingException di Java? Bagaimana untuk menangani UnsupportedEncodingException di Java? Jun 25, 2023 am 08:02 AM

Bagaimana untuk menangani UnsupportedEncodingException di Java? Dalam pengaturcaraan Java, anda mungkin menghadapi UnsupportedEncodingException. Pengecualian ini biasanya disebabkan oleh penukaran pengekodan yang salah atau pengekodan yang tidak disokong. Dalam artikel ini, kami akan memperkenalkan punca pengecualian UnsupportedEncodingException dan cara menanganinya. Apa itu Tidak DisokongE

Analisis kod sumber str jenis terbina dalam Python Analisis kod sumber str jenis terbina dalam Python May 09, 2023 pm 02:16 PM

1Unit asas storan komputer Unicode ialah bait, yang terdiri daripada 8 bit. Memandangkan bahasa Inggeris hanya terdiri daripada 26 huruf ditambah beberapa simbol, aksara Inggeris boleh disimpan terus dalam bait. Tetapi bahasa lain (seperti Cina, Jepun, Korea, dll.) perlu menggunakan berbilang bait untuk pengekodan kerana bilangan aksara yang banyak. Dengan penyebaran teknologi komputer, teknologi pengekodan aksara bukan Latin terus berkembang, tetapi masih terdapat dua batasan utama: tiada sokongan berbilang bahasa: skema pengekodan satu bahasa tidak boleh digunakan dalam bahasa lain dan tiada standard bersatu: contohnya Terdapat banyak piawaian pengekodan dalam bahasa Cina seperti GBK, GB2312, GB18030, dsb. Memandangkan kaedah pengekodan tidak bersatu, pembangun perlu menukar berulang-alik antara pengekodan yang berbeza, dan banyak ralat pasti akan berlaku.

Apakah persamaan dan perbezaan antara __str__ dan __repr__ dalam Python? Apakah persamaan dan perbezaan antara __str__ dan __repr__ dalam Python? Apr 29, 2023 pm 07:58 PM

Apakah persamaan dan perbezaan antara __str__ dan __repr__? Kita semua tahu perwakilan rentetan fungsi repr() boleh menyatakan objek dalam bentuk rentetan untuk memudahkan pengenalan kita. Ini ialah "perwakilan rentetan". repr() mendapatkan perwakilan rentetan objek melalui kaedah khas __repr__. Jika __repr__ tidak dilaksanakan, apabila kita mencetak contoh vektor ke konsol, rentetan yang terhasil mungkin. >>>classContoh:lulus>>>cetak(str(Contoh()))>>>

Apakah prinsip dan penggunaan jenis Redis dan pengekodan pengekodan? Apakah prinsip dan penggunaan jenis Redis dan pengekodan pengekodan? May 29, 2023 pm 04:21 PM

Abstrak Redis ialah sumber terbuka, pangkalan data nilai kunci berprestasi tinggi yang digunakan secara meluas dalam pelbagai senario. Dalam Redis, jenis data (jenis) dan pengekodan (pengekodan) adalah konsep yang sangat penting. Blog ini akan memperkenalkan secara terperinci jenis data yang disokong oleh Redis serta kaedah pengekodan yang sepadan dan prinsip pelaksanaan asas. Untuk melihat pengekodan dalaman kunci Redis, anda boleh menggunakan perintah Redis OBJECTENCODINGkey. Antaranya, kunci ialah nama kunci yang anda ingin tanya. Contohnya, jika anda ingin menanyakan pengekodan dalaman kunci bernama mykey, anda boleh melaksanakan perintah berikut: 127.0.0.1:6379>objectencodin

HTML dan Kod: Melihat lebih dekat pada istilah HTML dan Kod: Melihat lebih dekat pada istilah Apr 10, 2025 am 09:28 AM

Htmlisaspecifictypeofcodefocusedonstructuringwebcontent, manakala "kod" secara meluas ini

Penyelesaian kepada pengecualian UnsupportedEncodingException dalam Java Penyelesaian kepada pengecualian UnsupportedEncodingException dalam Java Jun 25, 2023 am 08:48 AM

UnsupportedEncodingException mungkin berlaku di Java, terutamanya kerana pengekodan tidak disokong. Apabila memproses data teks, selalunya perlu melakukan penukaran pengekodan, iaitu, untuk menukar kandungan satu format pengekodan ke kandungan format pengekodan lain. Jika jenis pengekodan yang digunakan untuk penukaran pengekodan tidak disokong, UnsupportedEncodingException akan dibuang. Artikel ini akan memperkenalkan penyelesaian kepada pengecualian ini. satu,

Gunakan fungsi yang disediakan oleh pakej pengekodan/csv untuk membaca dan menulis fail CSV Gunakan fungsi yang disediakan oleh pakej pengekodan/csv untuk membaca dan menulis fail CSV Jul 24, 2023 pm 01:13 PM

Gunakan fungsi yang disediakan oleh pakej pengekodan/csv untuk membaca dan menulis fail CSV (Comma-SeparatedValues) ialah format storan data yang biasa digunakan yang hanya boleh menyimpan data sebagai fail teks dalam bentuk dipisahkan koma. Dalam Python, anda boleh menggunakan pakej pengekodan/csv dalam pustaka standard untuk membaca dan menulis fail CSV dengan mudah. Pertama, kita perlu mengimport pakej pengekodan/csv: importcsv Seterusnya

See all articles