Apakah yang perlu saya lakukan jika Android memberikan php aksara Cina bercelaru?

藏色散人
Lepaskan: 2023-03-17 08:30:02
asal
1658 orang telah melayarinya

Penyelesaian kepada aksara Cina yang bercelaru Android dalam PHP: 1. Buka fail PHP yang sepadan 2. Sebelum "json_encode", gunakan "urlencode()" untuk memproses semua kandungan dalam semua tatasusunan; ()" menjadi rentetan json; 4. Gunakan "urldecode()" untuk menukar kembali bahasa Cina yang dikodkan.

Apakah yang perlu saya lakukan jika Android memberikan php aksara Cina bercelaru?

Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer Dell G3.

Apakah yang perlu saya lakukan jika Android memberikan php aksara Cina bercelaru?

1 Android sendiri tidak boleh mengakses pangkalan data mysql secara langsung Anda perlu menggunakan halaman web PHP untuk menyelesaikan operasi pangkalan data mysql. Pertukaran data antara PHP dan Android memerlukan penggunaan format JSON.

2. Apakah itu json

Pada awal abad ke-21, Douglas Crockford sedang mencari format pertukaran data mudah yang boleh bertukar-tukar data antara pelayan. Bahasa pertukaran data biasa pada masa itu ialah XML, tetapi Douglas Crockford merasakan penjanaan dan penghuraian XML terlalu menyusahkan, jadi dia mencadangkan format yang dipermudahkan, iaitu Json.

Spesifikasi Json adalah sangat mudah dan boleh dijelaskan dengan jelas hanya dalam beberapa ratus perkataan pada halaman, dan Douglas Crockford mendakwa bahawa spesifikasi ini tidak perlu dinaik taraf kerana semua peraturan telah ditetapkan.

1) Data selari dipisahkan dengan koma (", ").

2) Pemetaan diwakili oleh titik bertindih (": ").

3) Pengumpulan (tatasusunan) data selari diwakili oleh kurungan segi empat sama ("[]").

4) Koleksi yang dipetakan (objek) diwakili oleh kurungan kerinting ("{}").

Empat peraturan di atas adalah semua kandungan format Json.

Sebagai contoh, ayat berikut:

"Beijing mempunyai keluasan 16,800 kilometer persegi dan penduduk tetap 16 juta. Shanghai mempunyai keluasan 6,400 kilometer persegi dan penduduk kekal 18 juta.

ditulis dalam format json seperti ini:

[  {"城市":"北京","面积":16800,"人口":1600},  {"城市":"上海","面积":6400,"人口":1800}]
Salin selepas log masuk

Jika struktur data diketahui lebih awal, kaedah penulisan di atas boleh dipermudahkan lagi:

[  ["北京",16800,1600],  ["上海",6400,1800]]
Salin selepas log masuk

Seperti yang anda lihat, JSON sangat mudah dipelajari dan digunakan Oleh itu, dalam beberapa tahun sahaja, ia telah menggantikan xml dan menjadi format pertukaran data yang paling popular di Internet 🎜>3. Kod kacau JSON dalam PHP

Gunakan fungsi terbina dalam json_encode() dalam php (php > 5.2) untuk memindahkan data dalam php ke bahasa lain dan menggunakannya fungsi ini adalah untuk menukar nilai ke dalam format storan data json

Keputusan menjalankan program adalah seperti berikut:
<?php
$arr = array( &#39;Name&#39;=>&#39;希亚&#39;,&#39;Age&#39;=>20);
$jsonencode = json_encode($arr);
echo $jsonencode;
?>
Salin selepas log masuk

Apakah yang perlu saya lakukan jika Android memberikan php aksara Cina bercelaru?Orang Cina. aksara dalam tatasusunan muncul seperti u5e0cu4e9a selepas json_encode Fungsi urlencode() digunakan untuk memproses yang berikut Sebelum json_encode, semua kandungan dalam semua tatasusunan diproses dengan urlencode() digunakan untuk menukarnya. menjadi rentetan json. Akhirnya, urldecode() digunakan untuk menukar bahasa Cina yang dikodkan Kembali

Kali ini kod berjaya dijalankan

<?php 
/**************************************************************
* 
*
使用特定function对数组中所有元素做处理 
* @param string &$array 要处理的字符串
* @param string $function 要执行的函数 
* @return boolean $apply_to_keys_also 是否也应用到key上 
* @access public 
* 
*************************************************************/ 
function arrayRecursive(&$array, $function, $apply_to_keys_also = false) 
{    
static $recursive_counter = 0;    
if (++$recursive_counter > 1000) 
{        
die(&#39;possible deep recursion attack&#39;);    
}    
foreach ($array as $key => $value) 
{        
if (is_array($value)) 
{            
arrayRecursive($array[$key], $function, $apply_to_keys_also);        
}
else 
{            
$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]);            
}        
}    
}    
$recursive_counter--; 
} 
/************************************************************** 
* 
* 将数组转换为JSON字符串(兼容中文)
* @param array $array 要转换的数组 
* @return string 转换得到的json字符串
* @access public 
* 
*************************************************************/ 
function JSON($array) 
{ 
arrayRecursive($array, &#39;urlencode&#39;, true); 
$json = json_encode($array);
 return urldecode($json); 
} 
 $array = array ( &#39;Name&#39;=>&#39;希亚&#39;,&#39;Age&#39;=>20); 
 echo JSON($array);
?>
Salin selepas log masuk

Pembelajaran yang disyorkan: "

Tutorial Video PHPApakah yang perlu saya lakukan jika Android memberikan php aksara Cina bercelaru?"

Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika Android memberikan php aksara Cina bercelaru?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan