JSON相關知識整理

2022-09-13 17:00:17 字數 1049 閱讀 8884

json   全稱:j**ascript object notation ,一種輕量級的資料交換格式

示例:    ,"second":}

四個基本規則:

1) 並列的資料之間用逗號(", ")分隔。

2) 對映用冒號(": ")表示。

3) 並列資料的集合(陣列)用方括號("")表示。

4) 對映的集合(物件)用大括號("{}")表示。

優點:1)資料格式較簡單,易於讀寫,格式都是壓縮的,占用頻寬小。

2)支援多種語言,包括actionscript,c,c#,j**a,j**ascript,php,python,ruby等服務端語言,便於伺服器端的解析。

對比serialize,是一種類似於json的資料格式,但是php的serialize是將變數序列化,返回乙個具有變數型別和結構的字串表示式,序列化後的資料格式儲存資料原有型別,適合儲存帶有加密方式的資料串,防止資料被中途擷取反序列化破解,而json適合資料量大,不要求保留原有資料型別的情況下使用

php常用的json函式

json_encode — 對變數進行 json 編碼

json_decode — 對 json 格式的字串進行解碼,當第二個引數為true時將返回array,如果沒有或者預設值false則返回乙個object

example#1

<?php

$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);

echo json_encode($arr);

?>

輸出example#2

<?php

$json = '';

var_dump(json_decode($json));

var_dump(json_decode($json, true));

?>

輸出object(stdclass)#1 (5)

array(5)

在j**ascript中,ecmascript提供了內建函式json.stringify()和json.parse()來序列化和還原j**ascript物件

json知識整理

1 json字串轉為字典 json.load json.loads 兩個方法功能類似,可選引數也相同,最大的區別在於,json.load方法接受的輸入,即第乙個引數,是包含json資料的檔案物件,如open方法的返回物件,json.loads接受的輸入是json字串,而非檔案物件。從輸入型別的區別也...

XMPP 相關知識整理

xmpp the extensible messaging and presence protocol 中文全稱 可擴充套件通訊和表示協議 簡介 可擴充套件通訊和表示協議 xmpp 可用於服務類實時通訊 表示和需求響應服務中的xml資料元流式傳輸。xmpp以jabber協議為基礎,而jabber是即...

patch,diff相關知識整理

diff 命令列選項 原始檔案 新檔案 幾個常用的選項說明 diff的內容預設輸出到stdout上,所以需要把它重定向到乙個檔案中才能儲存,如下 diff un test0 test1 test1.patch如果是資料夾就加個r 常用 rnu就行 patch 命令列選項 待打補丁的檔案或文件 補丁檔...