其實(shí)json格式無(wú)非就是{name:123,鍵:值,…}的形式下去,你就可以根據(jù)這個(gè)辦法進(jìn)行賦值到j(luò)son存儲(chǔ)了。其實(shí)你也可以把數(shù)組轉(zhuǎn)成json,使用json_encode函數(shù)轉(zhuǎn)換,json轉(zhuǎn)數(shù)組用json_decode解碼就可以了。
創(chuàng)新互聯(lián)公司是一家專注于做網(wǎng)站、網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),和平網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:和平等地區(qū)。和平做網(wǎng)站價(jià)格咨詢:18982081108
希望我的回答可以幫到你,有什么不懂可以追問(wèn)。
目前,JSON已經(jīng)成為最流行的數(shù)據(jù)交換格式之一,各大網(wǎng)站的API幾乎都支持它。
從5.2版本開始,PHP原生提供json_encode()和json_decode()函數(shù),前者用于編碼,后者用于解碼。
一、json_encode()
該函數(shù)主要用來(lái)將數(shù)組和對(duì)象,轉(zhuǎn)換為json格式。先看一個(gè)數(shù)組轉(zhuǎn)換的例子:
$arr = array ('a'=1,'b'=2,'c'=3,'d'=4,'e'=5);
echo json_encode($arr);
結(jié)果為
{"a":1,"b":2,"c":3,"d":4,"e":5}
由于json只接受utf-8編碼的字符,所以json_encode()的參數(shù)必須是utf-8編碼,否則會(huì)得到空字符或者null。當(dāng)中文使用GB2312編碼,或者外文使用ISO-8859-1編碼的時(shí)候,這一點(diǎn)要特別注意。
二、索引數(shù)組和關(guān)聯(lián)數(shù)組
PHP支持兩種數(shù)組,一種是只保存"值"(value)的索引數(shù)組(indexed array),另一種是保存"名值對(duì)"(name/value)的關(guān)聯(lián)數(shù)組(associative array)。
由于javascript不支持關(guān)聯(lián)數(shù)組,所以json_encode()只將索引數(shù)組(indexed array)轉(zhuǎn)為數(shù)組格式,而將關(guān)聯(lián)數(shù)組(associative array)轉(zhuǎn)為對(duì)象格式。
比如,現(xiàn)在有一個(gè)索引數(shù)組
$arr = Array('one', 'two', 'three');
echo json_encode($arr);
結(jié)果為:
["one","two","three"]
三、類(class)的轉(zhuǎn)換
下面是一個(gè)PHP的類: class Foo { const ERROR_CODE = '404'; public $public_ex = 'this is public'; private $private_ex = 'this is private!'; protected $protected_ex = 'this should be protected'; public function getErrorCode() { return self::ERROR_CODE; } }
現(xiàn)在,對(duì)這個(gè)類的實(shí)例進(jìn)行json轉(zhuǎn)換:
$foo = new Foo;
$foo_json = json_encode($foo);
echo $foo_json;
輸出結(jié)果是
{"public_ex":"this is public"}
可以看到,除了公開變量(public),其他東西(常量、私有變量、方法等等)都遺失了。
JSON是一種輕量級(jí)數(shù)據(jù)交換格式。json簡(jiǎn)單說(shuō)就是js中的對(duì)象和數(shù)組,所以這兩種結(jié)構(gòu)就是對(duì)象和數(shù)組2種結(jié)構(gòu),你用的數(shù)據(jù)格式就是對(duì)象和數(shù)組的復(fù)合結(jié)構(gòu)。
你的示例JSON數(shù)據(jù)是名/值對(duì),其中只有一個(gè)"wegInstLt"的變量名,值是包含一個(gè)條目的數(shù)組。假設(shè)var info={"wegInstLt":[{"billTypeCode":"0","channelId":530,"channelKind":"03","isHaveBillDate":"0","isHavePayAmount":"0","isLeePay":"0","isPrePay":"1","wiliCode":"1238","wiliItem":"00","wiliName":"哈爾濱市自來(lái)水公司","wltiId":10345}]}; 要獲得"哈爾濱市自來(lái)水公司"可以這樣寫:
info.wegInstLt[0].wiliName
希望可以幫到你,祝你生活愉快!
include不是引用一個(gè)文件嗎,引用了之后你只要不改變這個(gè)文件的數(shù)據(jù)類型,那么這個(gè)文件依然是json類型的呀
js中:
json格式字符串轉(zhuǎn)json對(duì)象(strJSON代表json字符串)
var obj = eval(strJSON);
var obj = strJSON.parseJSON();
var obj = JSON.parse(strJSON);
json對(duì)象轉(zhuǎn)json格式字符串(obj代表json對(duì)象)
var str = obj.toJSONString();
var str = JSON.stringify(obj)
運(yùn)用時(shí)候需要除了eval()以外,其他的都需要引入json.js包,切記?。?!
前臺(tái):
form action="跳轉(zhuǎn)頁(yè)面" method="post" enctype="multipart/form-data"
input type="file" name="fname" /
input type="submit" value="Submit" /
/form
input[type=file] 表示:需要上傳的文本或者圖片
后臺(tái):
echo json_encode($_POST); // 輸出json 字符串
輸出的內(nèi)容是上傳到服務(wù)器的文件路徑等相關(guān)信息