天天看點

php變量與json格式互相轉換的幾個方法

json是一種輕量級的資料交換格式,已經被絕大數語言廣泛使用,在php中與前端進行資料交換便使用json格式的資料,那麼如何在php中将變量與json格式互相轉換,本文就帶大家一起來看一看。在php中使用json需要用到兩個函數json_encode、json_decode。  

1.json_decode  

json_decode(string$json,bool$assoc=false,int$depth=512,int$options=0)  

$json:待解碼的jsonstring格式的字元串。這個函數僅能處理UTF-8編碼的資料。  

assoc:當該參數為true時,将傳回array而非object。  

depth:指定遞歸深度。  

options:由常量組成的掩碼。  

傳回值:通過恰當的PHP類型傳回在json中編碼的資料。  

2.json_encode  

json_encode(mixed$value,int$options=0,int$depth=512)  

value:待編碼的value,除了資源(resource)類型之外,可以為任何資料類型。所有字元串資料的編碼必須是UTF-8。  

options:由以下常量組成的二進制掩碼  

depth:設定最大深度。必須大于0。  

傳回值:成功則傳回JSON編碼的string或者在失敗時傳回false。  

代碼執行個體:  

$arr=array('a'=>"sdf",'b'=>2,'c'=>"dfasd",'d'=>4,'e'=>5);  

echojson_encode($arr);  

echo"  

";  

$js=json_encode($arr);  

var_dump(json_decode($js));  

?>  

輸出:  

{"a":"sdf","b":2,"c":"dfasd","d":4,"e":5}  

object(stdClass)#1(5){["a"]=>string(3)"sdf"["b"]=>int(2)["c"]=>string(5)"dfasd"["d"]=>int(4)["e"]=>int(5)}

來源:https://www.92jzh.com/