當我們想要將陣列值儲存到資料庫時,就可以對陣列進行序列化操作,然後將序列化後的值儲存到資料庫中。其實PHP序列化數組就是將複雜的陣列資料型別轉換為字串,方便數組存庫操作。
對PHP陣列進行序列化和反序列化操作,主要就用到兩個函數,serialize
和unserialize
。
一、PHP陣列序列化:serialize
$arr = array('PHP','Java','Python','C'); $result = serialize($arr); echo $result;
執行結果:
a:表示整體的資料類型,這裡是array;
a:4中的4:表示陣列元素的數量;
i:表示int,整數;
0:表示陣列元素的下標;
s:表示string,即陣列值的型別;
s:3中3:表示陣列值的長度。
ps: serialize() 傳回字串,此字串包含了表示 value 的位元組流,可以儲存於任何地方。這有利於儲存或傳遞 PHP 的值,同時不遺失其類型和結構。
二、PHP反序列化:unserialize
$arr = array('PHP','Java','Python','C'); $result = serialize($arr); var_dump(unserialize($result));
結果:
ps: unserialize() 是對單一的已序列化的變數進行操作,將其轉換回PHP 的值。
推薦教學:PHP影片教學
#以上是php數組為什麼要序列化的詳細內容。更多資訊請關注PHP中文網其他相關文章!