Jadual Kandungan
php中json_encode UTF-8中文乱码的更好解决方法,
Rumah pembangunan bahagian belakang tutorial php php中json_encode UTF-8中文乱码的更好解决方法,_PHP教程

php中json_encode UTF-8中文乱码的更好解决方法,_PHP教程

Jul 13, 2016 am 10:18 AM
encode json utf-8 aksara Cina yang kacau

php中json_encode UTF-8中文乱码的更好解决方法,

最近在接口代码当中用到过json_encode,在网上找到说json_encode编码设置为UTF-8中文就不会乱码,经验证这办法确实是有效果的,但是不知道为什么,代码在用过一段时间之后就不太管用了。以下是自己的解决json_encode的办法。有更好的方法请分享出来吧!

第一种:

这种简单的做一个代码转换,urlcode之后再返回所需数组

我代码这样就足够了。

代码如下 复制代码

public static function encodeOperations ($array)

{

foreach ((array)$array as $key => $value) {

if (is_array($value)) {

encodeOperations($array[$key]);

} else {

$array[$key] = urlencode(mb_convert_encoding($value,'UTF-8','GBK'));

}

}

return $array;

}
Salin selepas log masuk

第二种:

这种是在网上看到的,然后就是有评论说会出现无限循环的问题,但是这显然很全面的,然后我测试之后也确实有,贴这里仅供参考

代码如下

/**************************************************************

*

* 使用特定function对数组中所有元素做处理

* @param string &$array 要处理的字符串

* @param string $tocode 编码后

* @param string $oldcode 编码前

* @param string $function 要执行的函数

* @return boolean $apply_to_keys_also 是否也应用到key上

* @return array $array 是否也应用到key上

* @access public

*

*************************************************************/

function encodeOperations (&$array, $function, $tocode=false,$oldcode=false,$apply_to_keys_also = false)

{

foreach ($array as $key => $value) {
(www.jb51.net)
if (is_array($value)) {

encodeOperations($array[$key], $function, $apply_to_keys_also);

} else {

if($tocode&&$oldcode) {

if(function_exists(mb_convert_encoding)) {

$value = mb_convert_encoding($value,$tocode,$oldcode);

}else{

return "error";

}

}

$array[$key] = $function($value);

}


if ($apply_to_keys_also && is_string($key)) {

$new_key = $function($key);

if ($new_key != $key) {

$array[$new_key] = $array[$key];

unset($array[$key]);

}

}

}

return $array;

}


/****from:http://www.bkjia.com/phper/31/66729.htm**********************************************************

*

* 将数组转换为JSON字符串(兼容中文)

* @param array $array 要转换的数组

* @return string 转换得到的json字符串

* @access public

*

*************************************************************/

function JSON($array) {

arrayRecursive($array, 'urlencode', true);

$json = json_encode($array);

return urldecode($json);

}
Salin selepas log masuk

对中文返回是null空的话我们需要进行字符转换成uft8或者先使用urlencode进行编译呼。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/886146.htmlTechArticlephp中json_encode UTF-8中文乱码的更好解决方法, 最近在接口代码当中用到过json_encode,在网上找到说json_encode编码设置为UTF-8中文就不会乱码,...
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)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu 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)

Kaedah untuk menyelesaikan masalah aksara Cina bercelaru dalam PHP Dompdf Kaedah untuk menyelesaikan masalah aksara Cina bercelaru dalam PHP Dompdf Mar 05, 2024 pm 03:45 PM

Kaedah untuk menyelesaikan masalah bahasa Cina PHPDompdf PHPDompdf ialah alat untuk menukar dokumen HTML kepada fail PDF Ia berkuasa dan mudah digunakan. Walau bagaimanapun, semasa memproses kandungan Cina, anda kadangkala menghadapi masalah aksara Cina yang bercelaru. Artikel ini akan memperkenalkan beberapa kaedah untuk menyelesaikan masalah aksara Cina bercelaru dalam PHPDompdf dan memberikan contoh kod khusus. 1. Apabila menggunakan fail fon untuk memproses kandungan Cina, masalah biasa ialah Dompdf tidak menyokong kandungan Cina secara lalai.

Penyelesaian muktamad kepada masalah aksara Cina yang kacau dalam PyCharm Penyelesaian muktamad kepada masalah aksara Cina yang kacau dalam PyCharm Jan 27, 2024 am 08:00 AM

Kaedah muktamad untuk menyelesaikan masalah aksara Cina yang kacau dalam PyCharm memerlukan contoh kod khusus Pengenalan: PyCharm, sebagai persekitaran pembangunan bersepadu (IDE) Python yang biasa digunakan, mempunyai fungsi yang berkuasa dan antara muka pengguna yang mesra, serta disukai dan digunakan oleh. majoriti pemaju. Walau bagaimanapun, apabila PyCharm memproses aksara Cina, kadangkala ia mungkin menghadapi aksara bercelaru, yang menyebabkan masalah tertentu dalam pembangunan dan penyahpepijatan. Artikel ini akan memperkenalkan cara menyelesaikan masalah bercelaru bahasa Cina dalam PyCharm dan memberikan contoh kod khusus. 1. Sediakan projek

Punca dan penyelesaian biasa untuk aksara Cina yang kacau dalam pemasangan MySQL Punca dan penyelesaian biasa untuk aksara Cina yang kacau dalam pemasangan MySQL Mar 02, 2024 am 09:00 AM

Penyebab dan penyelesaian biasa untuk aksara Cina yang kacau dalam pemasangan MySQL MySQL ialah sistem pengurusan pangkalan data hubungan yang biasa digunakan, tetapi anda mungkin menghadapi masalah aksara Cina yang kacau semasa digunakan, yang membawa masalah kepada pembangun dan pentadbir sistem. Masalah aksara Cina bercelaru terutamanya disebabkan oleh tetapan set aksara yang salah, set aksara yang tidak konsisten antara pelayan pangkalan data dan pelanggan, dsb. Artikel ini akan memperkenalkan secara terperinci punca dan penyelesaian biasa aksara Cina yang kacau dalam pemasangan MySQL untuk membantu semua orang menyelesaikan masalah ini dengan lebih baik. 1. Sebab biasa: tetapan set watak

Apakah perbezaan antara MySQL5.7 dan MySQL8.0? Apakah perbezaan antara MySQL5.7 dan MySQL8.0? Feb 19, 2024 am 11:21 AM

MySQL5.7 dan MySQL8.0 ialah dua versi pangkalan data MySQL yang berbeza Terdapat beberapa perbezaan utama antara mereka: Peningkatan prestasi: MySQL8.0 mempunyai beberapa peningkatan prestasi berbanding MySQL5.7. Ini termasuk pengoptimum pertanyaan yang lebih baik, penjanaan pelan pelaksanaan pertanyaan yang lebih cekap, algoritma pengindeksan yang lebih baik dan pertanyaan selari, dsb. Penambahbaikan ini boleh meningkatkan prestasi pertanyaan dan prestasi keseluruhan sistem. Sokongan JSON: MySQL 8.0 memperkenalkan sokongan asli untuk jenis data JSON, termasuk penyimpanan, pertanyaan dan pengindeksan data JSON. Ini menjadikan pemprosesan dan memanipulasi data JSON dalam MySQL lebih mudah dan cekap. Ciri transaksi: MySQL8.0 memperkenalkan beberapa ciri transaksi baharu, seperti atomic

Petua pengoptimuman prestasi untuk menukar tatasusunan PHP kepada JSON Petua pengoptimuman prestasi untuk menukar tatasusunan PHP kepada JSON May 04, 2024 pm 06:15 PM

Kaedah pengoptimuman prestasi untuk menukar tatasusunan PHP kepada JSON termasuk: menggunakan sambungan JSON dan fungsi json_encode() menambah pilihan JSON_UNESCAPED_UNICODE untuk mengelakkan aksara melarikan diri menggunakan penimbal untuk meningkatkan prestasi pengekodan JSON; Pustaka pengekodan JSON.

Tutorial penggunaan Panda: Permulaan pantas untuk membaca fail JSON Tutorial penggunaan Panda: Permulaan pantas untuk membaca fail JSON Jan 13, 2024 am 10:15 AM

Permulaan Pantas: Kaedah Pandas membaca fail JSON, contoh kod khusus diperlukan Pengenalan: Dalam bidang analisis data dan sains data, Pandas ialah salah satu perpustakaan Python yang penting. Ia menyediakan fungsi yang kaya dan struktur data yang fleksibel, serta boleh memproses dan menganalisis pelbagai data dengan mudah. Dalam aplikasi praktikal, kita sering menghadapi situasi di mana kita perlu membaca fail JSON. Artikel ini akan memperkenalkan cara menggunakan Panda untuk membaca fail JSON dan melampirkan contoh kod tertentu. 1. Pemasangan Panda

Bagaimanakah anotasi dalam perpustakaan Jackson mengawal pensirilan dan penyahsirilan JSON? Bagaimanakah anotasi dalam perpustakaan Jackson mengawal pensirilan dan penyahsirilan JSON? May 06, 2024 pm 10:09 PM

Anotasi dalam perpustakaan Jackson mengawal pensirilan dan penyahserilangan JSON: Pensirilan: @JsonIgnore: Abaikan harta @JsonProperty: Tentukan nama @JsonGetter: Gunakan kaedah get @JsonSetter: Gunakan kaedah yang ditetapkan Deserialization: @JsonIgnoreProperties: Abaikan harta @ JsonProperty: Nyatakan nama @JsonCreator: Gunakan pembina @JsonDeserialize: Logik tersuai

Apakah yang perlu saya lakukan jika halaman web PHP mempunyai aksara Cina yang kacau? Penyelesaian yang lengkap Apakah yang perlu saya lakukan jika halaman web PHP mempunyai aksara Cina yang kacau? Penyelesaian yang lengkap Mar 26, 2024 pm 03:27 PM

Masalah aksara Cina yang kacau dalam halaman web PHP ialah aksara Cina dipaparkan sebagai aksara yang kacau dalam paparan halaman web Keadaan ini biasanya disebabkan oleh pengekodan yang tidak konsisten atau set aksara tidak ditetapkan. Menyelesaikan masalah aksara Cina bercelaru dalam halaman web PHP memerlukan bermula dari banyak aspek Berikut adalah beberapa penyelesaian biasa dan contoh kod khusus. Tetapkan pengekodan fail PHP: Mula-mula pastikan pengekodan fail PHP itu sendiri ialah UTF-8 Anda boleh menetapkan pengekodan UTF-8 apabila menyimpan dalam editor, atau tambahkan kod berikut pada pengepala fail PHP untuk ditetapkan. pengekodan: &l

See all articles