當前位置:首頁 » 編程語言 » phpjson中文亂碼

phpjson中文亂碼

發布時間: 2023-12-27 19:25:46

php JSON_ENCODE使用後中文變成百分號亂碼了

看到這幅握哪圖會了判行嗎?呵呵段沖碼也是utf-8編碼

Ⅱ PHP從Mysql查出來的數據轉換成json格式中文亂碼怎麼解決

解決辦法是在使用json_encode之前把字元用函數urlencode()處理一下,然後再json_encode,輸出結果的時候在用函數urldecode()轉回來。具體如下:

//urlencode處理
functionjson_array($obj){
foreach($objas$key=>$value){
if(is_array($obj[$key])){
$obj[$key]=json_array($obj[$key]);
}else{
$obj[$key]=urlencode($value);
}
}
return$obj;
}
//urldecode解密轉換為中文字元
function_json($obj){
returnurldecode(json_encode(json_array($obj)));
}

echo_json($json);//$json為你要輸出的json數組

此處遞歸調用是為了處理多維數組······

Ⅲ 我做php的,ajax傳值亂碼,亂碼都是這種方式:%u5BB4,以%u開頭的!請問怎麼解決呀

JQuery在Ajax提交出現中文亂碼的解決辦法:
因為編碼的原因
可能存在以下幾點原因:
1.HTML的編碼不統一:如頁面用的GB2312,好像JQuery對它支持不太好。以前我一直都是用UTF-8的,一直都沒有發現;
2.文件的編碼,這個不好在

表面上看到,簡體中文版的操作系統存的文本格式的文件默認是 GB2312,建議把文件換成UTF-8格式的

最簡單的解決辦法,把提交的中文文本用 JS的 escape 處理一下,就不會現出現亂碼了。

如:
//保存數據
$.ajax({
url:"/guide/savecomments.aspx" ,
type:"POST" ,
dataType:"json" ,
data:"Action=SaveComment&CommNickName=" +escape

(CommNickName.val()) + "&CommContent=" +escape(CommContent.val()) + "&GuideID=" + GuideID.val() + "&ScoreLogType=<%=ScoreLogType %>",
success:function

(results){
alert(results.message);
}
});

Ⅳ php在將數組轉成json的時候,key值是中文的,亂碼怎麼解決!

亂宴大源碼的話是因為文件的格式不正確,而網頁編碼是默認為文件編碼格式的,JSON又是UTF-8編碼,所以你的文件可能是GB2312格式仿辯,所以導致JSON內的中文亂碼。
這種情況轉換晌態為UTF-8格式就可以了。
(注意,轉換成無BOM格式的,記事本轉換的UTF-8是帶BOM的,會導致JSON無法正確解析)

Ⅳ php json decode 中文亂碼

呵呵,如果你查看一下手冊就知道了,json_encode()這個函數只能編碼utf-8的字元,就是說你給他傳入的參數只能是utf-8格式。所以捏,你在encode之前,需要將你的漢字編碼轉化為utf-8的格式,然後再encode,這樣就不會有問題了。

Ⅵ PHP中json_encode中文亂碼問題

php 中使用 json_encode() 內置函數(php > 5.2)可以使用得 php 中數據可以與其它語言很好的傳遞並且使用它。這個函數的功能是將數值轉換成json數據存儲格式
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo json_encode($arr);
//結果
//{"a":1,"b":2,"c":3,"d":4,"e":5}
/*
下面看一款json_encode中文亂碼問題
解決方法是用urlencode()函數處理以下,在json_encode之前,把所有數組內所有內容都用urlencode()處理一下,然用json_encode()轉換成json字元串,最後再用urldecode()將編碼過的中文轉回來
*/
function arrayrecursive(&$array, $function, $apply_to_keys_also = false)
{
static $recursive_counter = 0;
if (++$recursive_counter > 1000) {
die('possible deep recursion attack');
}
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, 'urlencode', true);
$json = json_encode($array);
return urldecode($json);
}
$array = array
(
'name'=>'希亞',
'age'=>20
);
echo json($array);
//應用實例
$servname="localhost";
$sqlservname="root";
$sqlservpws="123456";
$sqlname="lock1";
$db=mysql教程_connect($servname,$sqlservname,$sqlservpws) or die("資料庫教程連接失敗");
mysql_select_db($sqlname,$db);
$sql = "select * from t_operater";
$result =mysql_query($sql);
$rows = mysql_num_rows($result);
while($obj = mysql_fetch_object($result))
{
$arr[] = $obj;
}
echo '({"total":"'.$rows.'","results":'.json_encode($arr).'})';

Ⅶ 如何解決PHP中文亂碼問題

PHP中文亂碼主要是編碼不對,存在以下兩種情況,你以此檢查一下 ,改對編碼就行了

1、 php文件本身的編碼與網頁的編碼應匹配
a. 如果欲使用gb2312編碼,那麼php要輸出頭:header(「Content-Type: text/html; charset=gb2312"),靜態頁面添加<meta http-equiv="Content-Type" content="text/html; charset=gb2312">,所有文件的編碼格式為ANSI,可用記事本打開,另存為選擇編碼為ANSI,覆蓋源文件。

b. 如果欲使用utf-8編碼,那麼php要輸出頭 :header(「Content-Type: text/html; charset=utf-8"),靜態頁面添加<meta http-equiv="Content-Type" content="text/html; charset=utf-8">,所有文件的編碼格式為utf-8。保存為utf-8可能會有點麻煩,一般utf-8文件開頭會有BOM,如果使用 session就會出問題,可用editplus來保存,在editplus中,工具->參數選擇->文件->UTF-8簽名,選擇總 是刪除,再保存就可以去掉BOM信息了。

2. php本身不是Unicode的,所有substr之類的函數得改成mb_substr(需要裝mbstring擴展);或者用iconv轉碼。

熱點內容
怎麼看pppoe密碼 發布:2024-11-30 08:35:35 瀏覽:509
sandisk16gb存儲卡 發布:2024-11-30 08:34:42 瀏覽:953
eclipsejava反編譯 發布:2024-11-30 08:34:37 瀏覽:899
yy靜態頭像源碼 發布:2024-11-30 08:30:21 瀏覽:680
javaparseint 發布:2024-11-30 08:23:12 瀏覽:909
抖音密碼箱保險在哪裡 發布:2024-11-30 08:10:43 瀏覽:998
廣告文學腳本格式 發布:2024-11-30 08:09:57 瀏覽:634
期末到了解壓的方法 發布:2024-11-30 07:53:49 瀏覽:865
sqlce資料庫 發布:2024-11-30 07:41:21 瀏覽:726
奇瑞5x配置如何 發布:2024-11-30 07:39:50 瀏覽:642