導航:首頁 > 編程語言 > phpjsonencode轉義

phpjsonencode轉義

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

『壹』 如何讓php jsonencode 不轉義unicode

方法有兩種

1:php版本大於等於5.4,在使用json_encode的時候加入第二個參數JSON_UNESCAPED_UNICODE:如

//這樣使用中文可不會被轉義
$jsonStr=json_encode($data,JSON_UNESCAPED_UNICODE);

2:如果php版本小於5.4,可以使用這種方法,對unicode碼再進行解碼,解碼函數如下:

/**
*因php版本小於5.4
*decodeUnicode對中文編碼unicode進行反轉義為漢字
*@param$strjson字元串
*@return轉義後的json字元串
*/
functiondecodeUnicode($str)
{
returnpreg_replace_callback('/\\u([0-9a-f]{4})/i',
create_function(
'$matches',
'returnmb_convert_encoding(pack("H*",$matches[1]),"UTF-8","UCS-2BE");'
),
$str);
}

//使用方法
$jsonStr=decodeUnicode(json_encode($data));
//或者單獨封裝一個函數
function_json_encode($data=array()){
returndecodeUnicode(json_encode($data));
}

『貳』 php json_encode後的json裡面的int類型變成string類型

json_encode($data);
json_encode($data, JSON_NUMERIC_CHECK);
默認是加雙引號,即作為字元串雀帆擾輸出,加上參轎世數不加雙引頃旦號

『叄』 PHP解析JSON數據,在線等!!!

先用json_decode把json解析成一個Object。接著用php提供的foreach循環,遍歷得到key-value對,就能達到你想要的東西了

『肆』 php怎麼將數組轉換為json而不會使中文出現亂碼

如果頁面都是utf-8編碼,一般不會出現亂碼,如果不是utf-8,先轉為utf-8。
如果想要轉換的json中的中文可讀的話,在json_encode之前,把所有數組內所有內容都用urlencode()處理一下,然用json_encode()轉換成json字元串,最後再用urldecode()將編碼過的中文轉回來。

『伍』 如何正確運用PHP json_encode函數進行中文轉換

在 php 中使用 json_encode() 內置函數(php > 5.2)可以使用得 php 中數據可以與其它語言很好的傳遞並且使用它。這個函數的功能是賣輪將數值轉換成json數據存儲格式,但是轉換後的中文會變成Unicode編碼。x0dx0a[php] view plainprint?x0dx0a'希亞', x0dx0a 'Age'=>20 x0dx0a ); x0dx0a x0dx0a$jsonencode = json_encode($arr); x0dx0aecho $jsonencode; x0dx0a?> x0dx0a程序運行結果如下:x0dx0a[php] view plainprint?x0dx0a{"Name":null,"Age":20} x0dx0ajson_encode 函數中中文被編碼成 null 了,Google 了一下,很簡單,為了與前端緊密結合中侍信,Json 只支持 utf-8 編碼,我認為是前端的 Javascript 也是 utf-8 的原因。x0dx0a[php] view plainprint?x0dx0aiconv('gb2312','utf-8','這里是中文標題'), x0dx0a 'body'=>'abcd...' x0dx0a ); x0dx0a x0dx0aecho json_encode($array); x0dx0a?> x0dx0a這個程序的運行結果為:x0dx0a[php] view plainprint?x0dx0a{"title":"\u8fd9\u91cc\u662f\u4e2d\u6587\u6807\u9898","body":"abcd..."} x0dx0a數組中所有中文在json_encode之後都不見了或者出現\u2353等。解決方法是用urlencode()函數處理以下,在json_encode之前,把所有數組內所有內容都用urlencode()處理一下,然用json_encode()轉換成json字元串,最後再用urldecode()將編碼過的中文轉回來談前。x0dx0a[php] view plainprint?x0dx0a 1000) { x0dx0a die('possible deep recursion attack'); x0dx0a } x0dx0a foreach ($array as $key => $value) { x0dx0a if (is_array($value)) { x0dx0a arrayRecursive($array[$key], $function, $apply_to_keys_also); x0dx0a } else { x0dx0a $array[$key] = $function($value); x0dx0a } x0dx0a x0dx0a if ($apply_to_keys_also && is_string($key)) { x0dx0a $new_key = $function($key); x0dx0a if ($new_key != $key) { x0dx0a $array[$new_key] = $array[$key]; x0dx0a unset($array[$key]); x0dx0a } x0dx0a } x0dx0a } x0dx0a $recursive_counter--; x0dx0a} x0dx0a x0dx0a/************************************************************** x0dx0a * x0dx0a * 將數組轉換為JSON字元串(兼容中文) x0dx0a * @param array $array 要轉換的數組 x0dx0a * @return string 轉換得到的json字元串 x0dx0a * @access public x0dx0a * x0dx0a *************************************************************/ x0dx0afunction JSON($array) { x0dx0a arrayRecursive($array, 'urlencode', true); x0dx0a $json = json_encode($array); x0dx0a return urldecode($json); x0dx0a} x0dx0a x0dx0a$array = array x0dx0a ( x0dx0a 'Name'=>'希亞', x0dx0a 'Age'=>20 x0dx0a ); x0dx0ax0dx0aecho JSON($array); x0dx0a?> x0dx0a這次成功了,運行結果如下:x0dx0a[php] view plainprint?x0dx0a{"Name":"希亞","Age":"20"}

『陸』 關於PHP返回JSON的問題。

json 是一個標准來的...不用修改也不能修改

它要求你以:

* {
* "rows" : [{},{}], //數據集合
* "results" : 100, //記錄總數
* "hasError" : false, //是否存在錯誤
* "error" : "" // 僅在 hasError : true 時使用
* }


意思是以一個對象的形式返回...對象內容包括一個數據rows,包括一個結果總數result...等..你在PHP中,直接寫成類就可以了...

例子如下:

<?php


$obj=newstdclass();
$arr=array(1,1,1,1,1);
$obj->arr=$arr;
$obj->results=100;
$obj->hasError='false';
$obj->error='';

echojson_encode($obj);
?>
閱讀全文

與phpjsonencode轉義相關的資料

熱點內容
世界史綱pdf 瀏覽:131
湖北社保年審app叫什麼名字 瀏覽:852
邁達克雲伺服器 瀏覽:595
mfc深入淺出從mfc設計到mfc編程 瀏覽:81
螢石雲伺服器連接設置 瀏覽:325
中國名著pdf 瀏覽:592
華為伺服器設備序列號怎麼看 瀏覽:319
跑永輝生活配送用什麼app 瀏覽:149
ug識別符號命令在哪裡 瀏覽:719
pdf文件改文字 瀏覽:732
查詢qq號劍靈伺服器地址 瀏覽:552
國家反詐中心app為什麼要刷臉 瀏覽:303
iphone怎麼修改dns伺服器地址 瀏覽:85
bandizip解壓位置 瀏覽:168
伺服器的防火牆如何訪問 瀏覽:306
javagoto關鍵字 瀏覽:847
廣州少兒編程加盟排名榜 瀏覽:122
51單片機th0 瀏覽:292
冠軍交易pdf 瀏覽:208
excelword轉換成pdf 瀏覽:389