當前位置:首頁 » 編程語言 » php處理json

php處理json

發布時間: 2022-07-21 10:21:37

『壹』 php 輸出json及顯示json中的中文漢字詳解及實例

php
輸出json及顯示json中的中文漢字
在php中,我們經常需要將數組輸出json,只需要使用json_encode函數處理一下數組即可,但有的時候數組裡面有中文,使用json_encode函數處理後中文字元被編碼成了Unicode,如何才能在json中顯示中文呢?請看下文。
首先介紹一下php輸出json格式:
一種最簡單的用法,就是把數組直接輸出為json,如下:
<?php
$arr
=
array('p1'=>'ni"hao','p2'=>2,'ch'=>'碼農你好!');
$json
=
json_encode($arr);
echo
$json;
?>
輸出的結果為:
{"p1":"ni\"hao","p2":2,"ch":"\u7801\u519c\u4f60\u597d\uff01"}
這里要注意:
雙引號在json中會被自動編碼為\",這個很好理解,js中字元串中是不允許出來單引號、雙引號和反斜杠的。
中文字元被編碼成了Unicode
如果是寫介面,那直接這樣輸出就夠了,中文無需去做處理。等到了客戶端,再去把Unicode的中文轉成漢字即可。但如果要在伺服器端直接輸出漢字出來,那我們可以做如下處理。
<?php
$arr
=
array('p1'=>'nihao','p2'=>2,'ch'=>'碼農你好!');
$json
=
json_encode($arr);
echo
decodeUnicode($json);
function
decodeUnicode($str){
return
preg_replace_callback('/\\\\u([0-9a-f]{4})/i',
create_function(
'$matches',
'return
mb_convert_encoding(pack("H*",
$matches[1]),
"UTF-8",
"UCS-2BE");'
),
$str);
}
?>
輸出:
{"p1":"ni\"hao","p2":2,"ch":"碼農你好!"}
這個操作很簡單,其實就是把輸出結果匹配一下,把Unicode還原成了漢字。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

『貳』 PHP json格式處理

可以用正則

$jsonStr='{"db":"[{"0":"9","id":"9"},{"0":"9","id":"9"},]"}';

$jsonStr=preg_replace('/['"]([.*?])['"]/iU','$1',$jsonStr);//去除json串中,數組外的引號,將形如"[{...}]"替換成[{...}]
$jsonStr=preg_replace('/,s*]/',']',$jsonStr);//去除json串中多餘的逗號

字元串替換:

$jsonStr=str_replace('"[','[',$jsonStr);
$jsonStr=str_replace(',]"',']',$jsonStr);

『叄』 json如何接收php處理數據

對於json,PHP有對應的方法進行操作。


一般而言,json會以字元串形式傳給PHP腳本,一般都是放在$_POST裡面,

<?php
//接收
$json_parameter=$_POST['json_str'];

//處理,變成數組
$array=json_decode($json_parameter);

//PHP把數組數據變成json格式字元串,發給頁面
$demo=array(
'key'=>'value',
'key2'=>'value2'
);
$demo_json=json_encode($demo);//格式是{"key":"value","key2":"value2"}
echo$demo_json;

『肆』 php 接收JS過來的JSON數據

用php處理json數據,需要用json_decode函數轉成json對象,再取其屬性的值.

完整的php程序如下

『伍』 PHP 如何處理一串JSON 返回給我一個ID數組呢

<?php
$arr='[{"id":1,"gid":0,"title":"小紅"},{"id":2,"gid":0,"title":"小明"},{"id":3,"gid":0,"title":"小藍"},{"id":4,"gid":0,"title":"小白"},{"id":5,"gid":7,"title":"小嘿"},{"id":6,"gid":8,"title":"小網"},{"id":7,"gid":9,"title":"小王"},{"id":8,"gid":4,"title":"小2"},{"id":9,"gid":3,"title":"小3"},{"id":10,"gid":2,"title":"小8"},{"id":11,"gid":2,"title":"小7"},{"id":12,"gid":7,"title":"小7"}]';
$arr_list=json_decode($arr,1);
$id_pid=null;
$list=null;
foreach($arr_listas$key=>$val){
$id_pid[$val['id']]=$val['gid'];
$list[$val['id']]=$val;
}
functiongetChild($id,$id_pid,$child=array()){
if(count($child)==0)$child[]=$id;
$res=array_keys($id_pid,$id);

if(count($res)>0){
$child=array_merge($child,$res);
foreach($resas$val){
$child=getChild($val,$id_pid,$child);
}
}

return$child;
}

$id=3;
echo'<pre>';
print_r(getChild($id,$id_pid));
echo'</pre>';
exit();

結果:

『陸』 php解析json數據

<?php
$json = '{"APPCount": 2,"data": [
{
"originalID": "991",
"APPName": "優酷",
"APPType": "APK",
"category": "視頻",
"versionName": "3.8",
"versionCode": "5",
"packageName ": "cn.dsp.youku",
" APPStatus": "待審核",
"testReportURL": "",
"downloadCount": 0
},
{
"originalID": "992",
"APPName": "優酷",
"APPType": "APK",
"category": "視頻",
"versionName": "3.8",
"versionCode": "5",
"packageName ": "cn.dsp.youku",
" APPStatus": "安全測評未通過",
"testReportURL": "http: //192.168.0.106: /SecurityTest/sdsd.pdf",
"downloadCount": 0
}
]
}';

$decode = json_decode($json,true);
echo $decode['data'][1]['testReportURL'];

『柒』 php中怎麼轉換json字元串

php裡面有2個函數:json_encode和json_decode
查一下手冊就可以解決了。
json_decode($str,true)可以得到數組,第二參數不加默認為false,得到對象。這樣試試呢😊希望能幫到你,我還在後盾人線下面授培訓上課學習呢現在沒時間,有不會的可以問我,加油吧(/ω\)害羞

『捌』 PHP 如何解析 json

alert(send);

ajax=tel();
ajax.open("post", "setLine.class.php",true);
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

// 改成這樣就可以了
ajax.send({

'lineA':JSON.stringify(send);

});

『玖』 php 處理json字元串的問題

$json='{"a":1,"b":2,"c":3,"d":4,"e":5}';
//已數組形式返回
$a=json_decode($json,TRUE);
//為對應鍵值的變數賦值
foreach($aas$k=>$v){
eval('$'.$k.'='.$v.';');
}
//實測有效
echo$a;
echo'<p>';
echo$b;
echo'<p>';
echo$c;
echo'<p>';
echo$d;
echo'<p>';
echo$e;
echo'<p>';

上面的方法也是正確的,怎麼取捨看你的程序需求

熱點內容
如何讓給文件夾設置密碼查看 發布:2025-01-31 22:49:07 瀏覽:2
配置動態路由協議配錯了怎麼改 發布:2025-01-31 22:49:07 瀏覽:77
掃行程碼為什麼需要支付密碼 發布:2025-01-31 22:47:08 瀏覽:738
什麼樣的配置能玩地平線4 發布:2025-01-31 22:44:05 瀏覽:241
python正則表達式符號 發布:2025-01-31 22:43:50 瀏覽:391
androidmime 發布:2025-01-31 22:34:44 瀏覽:782
ftp和http的中文含義是 發布:2025-01-31 22:33:48 瀏覽:402
sqlite3存儲圖片 發布:2025-01-31 22:27:14 瀏覽:162
sqlserverphp 發布:2025-01-31 22:22:55 瀏覽:877
曲馬多存儲 發布:2025-01-31 22:22:52 瀏覽:538