⑴ php是怎麼返回json格式的數據
用json_encode()函數對數組進行JSON編碼。
有時候收不到可能是因為你返回的json格式被破壞了,最大的可能是BOM導致的,不要使用系統自帶的記事本編輯utf8格式的php。
還有就是在json_encode()前面和後面不能有別的輸出。
最好使用exit(json_encode($array))來輸出。
⑵ ajax 怎麼處理php返回json數據
用json_encode()函數對數組進行JSON編碼。
<?php
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echojson_encode($arr);
?>
以上常式會輸出:
{"a":1,"b":2,"c":3,"d":4,"e":5}[1]
當有中文字元時,當直接使用json_encode() 函數會使漢字不能正常顯示。 所以有了這個適用性比較廣的函數 ch_json_encode() 來解決這個問題。
⑶ 關於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);
?>
⑷ PHP返回json對象的問題
代碼如下:
<?php
/*驗證驗證碼是否正確*/
session_start();
$code = trim($_POST['code']);//接收前端傳來的數據
$raw_success = array('code' => 1, 'msg' => '驗證碼正確');
$raw_fail = array('code' => 2, 'msg' => '驗證碼錯誤');
$res_success = json_encode($raw_success);
$res_fail = json_encode($raw_fail);
header('Content-Type:application/json');//這個類型聲明非常關鍵
if ($code == $_SESSION["verfycode"]) {
echo $res_success;
} else {
echo $res_fail;
}
?>
這樣前端接收到的數據就是一個對象,前端操作起來非常的方便。
⑸ PHP是怎麼返回json格式的數據
1、php 輸出JSON格式,使用json_encode函數即可
2、示例:
<?php
header('Content-type: text/json');
$fruits = array (
"fruits" => array("a" => "orange", "b" => "banana", "c" => "apple"),
"numbers" => array(1, 2, 3, 4, 5, 6),
"holes" => array("first", 5 => "second", "third")
);
echo json_encode($fruits);
?>
示例得到結果:
{"fruits":{"a":"orange
⑹ PHP是怎麼返回json格式的數據
PHP中要返回json格式數據,直接輸出,然後退出或者結束即可。示例如下:
$arr=array('name'=>'chinawinxp','site'=>'com');
echojson_encode($arr);
exit;
//或者exit(json_encode($arr));
⑺ php curl 怎樣可以返回 json的數據
使用json_decode()函數,可以將json字元串轉換為PHP數組或對象。
<?php
$str='{"foo":"bar"}';
$obj=json_decode($str);
$arr=json_decode($str,true);
望採納~
⑻ 如何在PHP中返回Json數據
不對。
返回json用的json_encode()方法沒錯,但是需要在頭部聲明格式。
php返回需要用json_encode()方法來將需要轉換的字元串轉換成json編碼格式(注意:僅僅更換文件內容,而返回的文件依然為文本格式且編碼為gtk)
所以,這里需要在php頭部聲明
header('Content-Type:text/json;charset=utf-8');
JSON(JavaScriptObject Notation, JS 對象簡譜) 是一種輕量級的數據交換格式。它基於ECMAScript(歐洲計算機協會制定的js規范)的一個子集,採用完全獨立於編程語言的文本格式來存儲和表示數據。簡潔和清晰的層次結構使得 JSON 成為理想的數據交換語言。 易於人閱讀和編寫,同時也易於機器解析和生成,並有效地提升網路傳輸效率。
json通常被作為配置文件,常見還有.ini
⑼ php 如何聲明返回數據格式為 JSON
xml格式返回的是數據一般是這樣的,但也有不同:
<?xml version="1.0" encoding="gbk"?> <root> <head> <actdate>20170805</actdate> <trdate>20170805</trdate> <trtime>142410</trtime> <trseq>20170807001</trseq> <succflag>1</succflag> <retcode>0000</retcode> <retmsg>鎴愬姛</retmsg> </head> <body> <rowcount>0</rowcount> </body> </root>
一般xml直接用php的:simplexml_load_string();解析成數組,但我解析的時候提示:有無法解析的數據編碼。
也就是數據亂碼的那部分,解決亂碼我用了header的聲明,但不管用,最後用了:
iconv('utf-8','gbk',$a);
問題解決,先轉碼,後解析
最後json轉換就行了。
⑽ php json返回的是什麼格式的數據格式
php 輸出JSON格式,使用json_encode函數即可
例如:
<?php
header('Content-type: text/json');
$fruits = array (
"fruits" => array("a" => "orange", "b" => "banana", "c" => "apple"),
"numbers" => array(1, 2, 3, 4, 5, 6),
"holes" => array("first", 5 => "second", "third")
);
echo json_encode($fruits);
?>
得到結果:
{"fruits":{"a":"orange","b":"banana","c":"apple"},"numbers":[1,2,3,4,5,6],"holes":{"0":"first","5":"second","6":"third"}}