欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

php與json數(shù)據(jù) php解析json數(shù)據(jù)

php怎么接收json類(lèi)型數(shù)據(jù)

PHP接收J(rèn)SON格式的數(shù)據(jù)

公司主營(yíng)業(yè)務(wù):網(wǎng)站制作、成都做網(wǎng)站、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶(hù)真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶(hù)帶來(lái)驚喜。成都創(chuàng)新互聯(lián)公司推出彌勒免費(fèi)做網(wǎng)站回饋大家。

在API服務(wù)中,目前流行采用json形式來(lái)交互。

給前端調(diào)用的接口輸出Json數(shù)據(jù),這個(gè)比較簡(jiǎn)單,只需要組織好數(shù)據(jù),用json_encode($array) 轉(zhuǎn)化一下,前端就得到j(luò)son格式的數(shù)據(jù)。

接收前端提交的json數(shù)據(jù)稍微復(fù)雜一點(diǎn),原因是:PHP默認(rèn)識(shí)別的數(shù)據(jù)類(lèi)型是application/x-標(biāo)準(zhǔn)的數(shù)據(jù)類(lèi)型。因此,對(duì)型如text/xml 或者 soap 或者 application/octet-stream 和application/json格式之類(lèi)的內(nèi)容無(wú)法解析,如果用$_POST數(shù)組來(lái)接收就會(huì)失敗!

此時(shí)可以使用$GLOBALS['HTTP_RAW_POST_DATA'] 或 file_get_contents('php://input') 來(lái)獲取提交的數(shù)據(jù)

查看手冊(cè),可以發(fā)現(xiàn)$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST的區(qū)別:

$_POST:通過(guò) HTTP POST 方法傳遞的變量組成的數(shù)組,是自動(dòng)全局變量。

$GLOBALS['HTTP_RAW_POST_DATA'] :總是產(chǎn)生 $HTTP_RAW_POST_DATA 變量包含有原始的 POST 數(shù)據(jù)。此變量?jī)H在碰到未識(shí)別 MIME 類(lèi)型的數(shù)據(jù)時(shí)產(chǎn)生。$HTTP_RAW_POST_DATA 對(duì)于 enctype="multipart/form-data" 表單數(shù)據(jù)不可用。也就是說(shuō)基本上$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST是一樣的。但是如果post過(guò)來(lái)的數(shù)據(jù)不是PHP能夠識(shí)別的,你可以用 $GLOBALS['HTTP_RAW_POST_DATA']來(lái)接收,比如 text/xml 或者 soap 等等。

補(bǔ)充說(shuō)明:PHP默認(rèn)識(shí)別的數(shù)據(jù)類(lèi)型是application/x-標(biāo)準(zhǔn)的數(shù)據(jù)類(lèi)型。

PHP json數(shù)據(jù)寫(xiě)入到j(luò)son文件,讀取json文件

// 生成一個(gè)PHP數(shù)組

$data = array();

$data['name'] = 'admin';

$data['pwd'] = '123456';

// 把PHP數(shù)組轉(zhuǎn)成JSON字符串

$json_string = json_encode($data);

// 寫(xiě)入文件

file_put_contents('user.json', $json_string);

// 從文件中讀取數(shù)據(jù)到PHP變量

$json_string = file_get_contents('user.json');

// 把JSON字符串轉(zhuǎn)成PHP數(shù)組

$data = json_decode($json_string, true);

// 顯示出來(lái)看看

var_dump($data)

淺談PHP中JSON數(shù)據(jù)操作

JSON,全稱(chēng)是JavaScript

Object

Notation。它是基于JavaScript編程語(yǔ)言ECMA-262

3rd

Edition-December

1999標(biāo)準(zhǔn)的一種輕量級(jí)的數(shù)據(jù)交換格式,主要用于跟服務(wù)器進(jìn)行交換數(shù)據(jù)。跟XML相類(lèi)似,它獨(dú)立語(yǔ)言,在跨平臺(tái)數(shù)據(jù)傳輸上有很大的優(yōu)勢(shì)

新建文件json.php,先做encode操作:

//encode

//生成JSON格式數(shù)據(jù)

$arr

=

array(1,2,3,4,5,6,7,8,9,'Hello','PHP');

echo

json_encode($arr);//json_encode:把一個(gè)對(duì)象轉(zhuǎn)換成json格式數(shù)據(jù)

得到的結(jié)果是[1,2,3,4,5,6,7,8,9,"Hello","PHP"]

再來(lái)做decode操作:

//decode

解碼

$jsonStr

=

'{"h":"Hello","w":"World","0":[3,2,1]}';

$obj

=

json_decode($jsonStr);

echo

$obj-h;//使用成員訪問(wèn)的方式就可以得到結(jié)果

知道簡(jiǎn)單的使用方法后,可以嘗試著抓API數(shù)據(jù),比如天氣...

以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。

PHP JSON格式數(shù)據(jù)交互實(shí)例代碼詳解

在PHP中解析JSON主要用到j(luò)son_encode和json_decode兩個(gè)PHP

JSON函數(shù),比PHP解析XML方便很多,下面詳細(xì)介紹下PHP

JSON的使用。

JSON基礎(chǔ)介紹

JSON(JavaScript

Object

Notation)

是一種輕量級(jí)的數(shù)據(jù)交換格式。

JSON主要有兩種結(jié)構(gòu):

“名稱(chēng)/值”對(duì)的集合,在PHP中可以理解為關(guān)聯(lián)數(shù)組

(associative

array)。

值的有序列表(An

ordered

list

of

values)。在PHP中可以理解為普通數(shù)組(array)。

對(duì)象是一個(gè)無(wú)序的“‘名稱(chēng)/值'對(duì)”集合。一個(gè)對(duì)象以“{”(左括號(hào))開(kāi)始,“}”(右括號(hào))結(jié)束。每個(gè)“名稱(chēng)”后跟一個(gè)“:”(冒號(hào));“‘名稱(chēng)/值'

對(duì)”之間使用“,”(逗號(hào))分隔。

數(shù)組是值(value)的有序集合。一個(gè)數(shù)組以“[”(左中括號(hào))開(kāi)始,“]”(右中括號(hào))結(jié)束。值之間使用“,”(逗號(hào))分隔。值(value)可以是雙引號(hào)括起來(lái)的字符串(string)、數(shù)值(number)、true、false、

null、對(duì)象(object)或者數(shù)組(array)。這些結(jié)構(gòu)可以嵌套。

我目前對(duì)JSON的理解更偏向于數(shù)組,類(lèi)似于PHP中的關(guān)聯(lián)數(shù)組,你可以將PHP數(shù)組轉(zhuǎn)換為JSON格式。

更多JSON的介紹請(qǐng)參考JSON官網(wǎng)和IBM關(guān)于JSON的介紹

PHP

JSON解析實(shí)例

PHP5.2開(kāi)始已經(jīng)將JSON作為PHP擴(kuò)展的一部分,所以并不需要另外安裝JSON。另外為了保證下面的PHP

JSON實(shí)例不出現(xiàn)中文亂碼,請(qǐng)保證你的編碼格式為UTF8。

JSON是Javascript的一部分,首先我們看下Javascript中如何定義JSON

復(fù)制代碼

代碼如下:

var

json_obj

=

{'WebName':'PHP網(wǎng)站開(kāi)發(fā)教程網(wǎng)'};

alert(json_obj.WebName);

var

json_arr

=[{'WebName':'PHP網(wǎng)站開(kāi)發(fā)教程網(wǎng)','WebSite':''},{'ArtTitle':'PHP

JSON實(shí)例講解'}]

alert(json_arr[1].ArtTitle);

var

php_json

=

[['PHP網(wǎng)站開(kāi)發(fā)教程網(wǎng)',''],['文章標(biāo)題','PHP

JSON實(shí)例講解']];

alert(php_json[1][0]);

在這段JSON實(shí)例代碼中我構(gòu)建了所有的JSON形式,

第1行,定義了JSON以對(duì)象形式存在

第4行,定義了JSON以數(shù)組形式存在,嵌套了JSON對(duì)象,所以有點(diǎn)類(lèi)似于PHP的關(guān)聯(lián)數(shù)組,其實(shí)仍然是對(duì)象。

第7行,定了JSON以普通數(shù)組形式存在。

注意:由于Javascript是區(qū)分大小寫(xiě)的,所以訪問(wèn)JSON關(guān)聯(lián)數(shù)組對(duì)象時(shí)注意key的大小寫(xiě)問(wèn)題。

PHP與JSON格式數(shù)據(jù)交互時(shí),第一步需要將PHP數(shù)組轉(zhuǎn)換為JSON格式的數(shù)據(jù),可使用PHP5自帶的json_encode函數(shù),當(dāng)PHP解析傳遞過(guò)來(lái)的JSON格式數(shù)據(jù)時(shí)需要使用json_decode函數(shù)進(jìn)行解析轉(zhuǎn)換為PHP數(shù)組,PHP轉(zhuǎn)換并解析JSON數(shù)據(jù)的實(shí)例代碼如下

復(fù)制代碼

代碼如下:

?php

$json_arr

=

array('WebName'='PHP網(wǎng)站開(kāi)發(fā)教程網(wǎng)','WebSite'='');

$php_json

=

json_encode($json_arr);

echo

$php_json;

$php_json

=

json_decode($php_json);

print_r($php_json);

?

說(shuō)明:這里通過(guò)PHP定義了關(guān)聯(lián)數(shù)組,然后通過(guò)json_encode轉(zhuǎn)換為JSON格式的數(shù)據(jù),通過(guò)echo語(yǔ)句可以看到轉(zhuǎn)換后的JSON對(duì)象,通過(guò)PHP

JSON解析函數(shù)json_decode可以將JSON格式的數(shù)據(jù)解析為PHP的關(guān)聯(lián)數(shù)組。如果編碼不正確,JSON中文會(huì)出現(xiàn)亂碼。如果你使用Editplus調(diào)試PHP,請(qǐng)注意保存文件時(shí)編碼將ANSI改為UTF8。

最后我們來(lái)看下完整的PHP

JSON交互實(shí)例

復(fù)制代碼

代碼如下:

?php

$json_arr

=

array('WebName'='PHP網(wǎng)站開(kāi)發(fā)教程網(wǎng)','WebSite'='');

$php_json

=

json_encode($json_arr);

?

script

type="text/javascript"

var

php_json

=

?=$php_json?;

/script

script

type="text/javascript"

function

php_json_dis(php_json)

{

alert(php_json.WebName);

alert(php_json.WebSite);

}

php_json_dis(php_json);

/script

至此,PHP通過(guò)json_encode和json_decode函數(shù)對(duì)JSON格式數(shù)據(jù)進(jìn)行轉(zhuǎn)換和解析的實(shí)例就介紹完了。

本文題目:php與json數(shù)據(jù) php解析json數(shù)據(jù)
分享路徑:http://chinadenli.net/article6/hjoiig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站關(guān)鍵詞優(yōu)化虛擬主機(jī)域名注冊(cè)搜索引擎優(yōu)化網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)