1. 在php中怎麼接收來自app的JSON數據
根據你的代碼,你是用的是POST方法。
要在PHP中整體接收POST數據,有兩種方法。
注意,要使用以下兩種方法,Content-Type不能為multipart/form-data。
方法一:
使用:
file_get_contents('php://input')
其中,php://input是一個流,可以讀取沒有處理過的POST數據(即原始數據)。相較於$HTTP_RAW_POST_DATA而言,它給內存帶來的壓力較小,並且不需要特殊的php.ini設置。
方法二:
使用此方法,需要設置php.ini中的always_populate_raw_post_data值為On。
使用$HTTP_RAW_POST_DATA,包含了POST的原始數據。但這不是一個超全局變數,要在函數中使用它,必須聲明為global,或使用$GLOBALS['HTTP_RAW_POST_DATA']代替。
2. 在PHP中怎麼接收post過來的JSON數據
$jsonData=$_POST['jsonData'];//接收數據
$arrayData=json_decode($jsonData,true);//轉碼為數組
var_mp($arrayData);//列印結果
3. 在PHP中怎麼接收post過來的JSON數據
var allUnivList = [{
"id": 1,
"univs": [{
"id": 1001,
"name": "清華大學"
},
{
"id": 1002,
"name": "北京大學"
}],
"country_id": 0,
"name": "北京"
}]
//比如你傳遞的是上面這個JSON格式,在PHP端,舉個用JQ提交的例子:
$.ajax({
url: "test.php",
type: "post",
data: { allcity: allUnivList},
success: function (data) {
alert(data);
},
error: function () {
alert("系統異常!");
}
});
4. php如何接收post過來的JSON數據
post 傳遞的參數用 $_POST['name'] 來獲取
var_mp($_POST);
輸出所有的post傳遞過來的參數
5. PHP使用POST傳遞json數據的接收與處理問題
前端傳給伺服器的只是json 格式的字元串,使用json_decode,
mixed json_decode ( string $json [, bool $assoc ] )
var_mp(json_decode($json));
var_mp(json_decode($json, true));
如果不帶參數,則返回為對象
帶上true時,返回數組
foreach($ARR as $k=>$v){
echo 'key='.$k.';value='.$v;
}
單獨處理每個key 和對應的value就好
6. php怎麼接收json數據格式
PHP接收JSON格式的數據
在API服務中,目前流行採用json形式來交互。
給前端調用的介面輸出Json數據,這個比較簡單,只需要組織好數據,用json_encode($array) 轉化一下,前端就得到json格式的數據。
接收前端提交的json數據稍微復雜一點,原因是:PHP默認識別的數據類型是application/x-www.form-urlencoded標準的數據類型。因此,對型如text/xml 或者 soap 或者 application/octet-stream 和application/json格式之類的內容無法解析,如果用$_POST數組來接收就會失敗!
此時可以使用$GLOBALS['HTTP_RAW_POST_DATA'] 或 file_get_contents('php://input') 來獲取提交的數據
查看手冊,可以發現$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST的區別:
$_POST:通過 HTTP POST 方法傳遞的變數組成的數組,是自動全局變數。
$GLOBALS['HTTP_RAW_POST_DATA'] :總是產生 $HTTP_RAW_POST_DATA 變數包含有原始的 POST 數據。此變數僅在碰到未識別 MIME 類型的數據時產生。$HTTP_RAW_POST_DATA 對於 enctype="multipart/form-data" 表單數據不可用。也就是說基本上$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST是一樣的。但是如果post過來的數據不是PHP能夠識別的,你可以用 $GLOBALS['HTTP_RAW_POST_DATA']來接收,比如 text/xml 或者 soap 等等。