導航:首頁 > 編程語言 > php接收json對象

php接收json對象

發布時間:2022-12-11 22:32:32

『壹』 如何用php調用外部介面json數據

file_get_contents或者curl都可以
接收到數據後,可以使用php函數json_decode()把json轉換成數組或對象格式

『貳』 php怎麼寫服務端獲取 客戶端發來的json

如果使用的是HTTP協議的GET方法,數據保存在$_GET數組中.
如果使用的是HTTP協議的POST方法,數據通常保存在$_POST數組中.
注:如果post方法沒有指出數據類型,提交的數據可以通過$HTTP_RAW_POST_DATA獲取.

找到數據後可以通過json_decode函數處理下即可轉換成數組或對象.

『叄』 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就好

『肆』 php如何讀取json的內容

如果json是以對象的方式存儲於變數$json中,則這樣引用: $json->openid

如果json是以關聯數組的方式存儲於變數$json中,則這樣引用: $json['openid']

如果json是以字元串的方式存儲於變數$json中,則需要先轉換一下:

$a=json_decode($json);
print_r($a->openid);

或者

$a=json_decode($json,true);
print_r($a['openid']);

『伍』 php如何接收js傳來的json

感覺樓主對json_decode這個函數有點理解錯誤,這個函數時將一個json格式的字元串轉化成php數組用的,前提是其中的參數必須為字元串

那我們回頭看下樓主的代碼,經過eval以後jsondata變成了一個數組形變數,結構似乎有點奇怪,有5個元素的一個數組,但是每個元素又是一個json對象,而每個json對象又只有一個變數。換句話說如果想獲取createvote這個值,那麼就需要調用jsondata[0].doing


而且,post發送的數據要求是json對象,而樓主這個根本就是不是json...能否發送都是個問題...


樓上那個說$_POST獲取數據的,我試了一下,似乎不行。$_POST['doing']壓根就是個未定義的值


如果要json_decode那就沒必要先eval一下,感覺會弄巧成拙


給樓主一個代碼

js:

vardata='{"doing":"createvote","type":"type","num":"num","votetheme":"votetheme","creater":"loginname"}';
$.post(url,{data:data},function(res){alert(res)});

注意data變數,『與「的位置,不要寫反,反了的話json_decode是不能編譯


php:

<?php
if(isset($_POST["data"]))var_mp(json_decode($_POST["data"],true));
?>


根據返回的格式很明顯就是一個php的array格式


post的參數必須是name->value的格式,如果單純post一個變數,那麼就相當於只有value,沒有name,所以我這里將post的傳參值寫為{data:data}第一個data是name,第二個data是之前定義的字元串

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

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

完整的php程序如下

『柒』 php如何返回json對象呢

返回json用的json_encode()方法沒錯,但是需要在頭部聲明格式。
代碼解析
php返回需要用json_encode()方法來將需要轉換的字元串轉換成json編碼格式(注意:僅僅更換文件內容,而返回的文件依然為文本格式且編碼為gtk)
所以,這里需要在php頭部聲明
header('Content-Type:text/json;charset=utf-8');

拓展內容
json
JSON(javaScript Object Notation, JS 對象簡譜) 是一種輕量級的數據交換格式。它基於 ECMAScript (歐洲計算機協會制定的js規范)的一個子集,採用完全獨立於編程語言的文本格式來存儲和表示數據。簡潔和清晰的層次結構使得 JSON 成為理想的數據交換語言。 易於人閱讀和編寫,同時也易於機器解析和生成,並有效地提升網路傳輸效率。
json通常被作為配置文件,常見還有.ini
0

『捌』 php如何接收js傳來的json對象

你無法傳json對象到服務端交互的,要傳的只是一個字元串(Json),是個字元串!

你發的代碼里是json的解析,沒有多大意義,你在php頁面這樣調試

var_mp($_REQUEST);//輸出所有數據,如果存在的話,你會看到那個參數是啥


另外,json格式,主要方便javascript解析的,而不是php擅長的內容,多數情況下,是PHP返回json數據給js.

php的數組操作函數有主要的兩個json_encode()與json_decode();

從你的代碼中,我不確定你用何種方式通信,ajax?

我看你用到了jQuery,那裡面有個ajax,方式類似這樣的:

$.ajax({
type:"post",//method;canbegetwithpostorrequest
url:"/mySever.php",//phpurl
error:function(){alert('Error');},
data:{
data1:name,
data2:age,
},
datatype:"json",//jsonback
timeout:5000,
success:function(msg)
{
//eval(msg);//parasehere
}
});
returnfalse;
}

『玖』 php 如何將獲取json中的參數的值

很簡單。
因為Json實際上就是一個字元串,因此語言提供了將其轉換成數組,對象的能力。
使用json_decode就可以將字元串轉一個關聯數組。
比如$data = json_decode("{'success':1,xxxxxxxx}");
echo $data[tender_id];就OK了

『拾』 php 怎麼接收前端傳來的json數據

<?php
header("Content-type:text/html;charset=utf-8");
if($_POST){
$d = $_POST['data'];//這里獲取的直接就是數組了,不需要用到json_decode
echo $d['doing'];
//print_r($d);
exit;
}
?>

<script src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#xx").click(function(){
var url = "test.php";
var str ="{'doing':'createvote','type':'type','num':'num','votetheme':'votetheme','creater':'loginname'}";//json格式字元串
var data = eval('('+str+')');//轉換成數組對象,不加這步,那麼PHP獲取的是字元串。
$.post(url, {'data': data}, function(res) {//注意jquery的$.post的第2個參數必須是鍵值對形式
alert(res);
});
});
});
</script>

<input id="xx" type="button" value="點擊">

閱讀全文

與php接收json對象相關的資料

熱點內容
怎麼批量有順序的命名文件夾 瀏覽:209
杭州程序員健身 瀏覽:17
dvd光碟存儲漢子演算法 瀏覽:758
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:383
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:779
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:151