国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP如何序列化數據?

2020-03-22 19:52:44
字體:
來源:轉載
供稿:網友
大多數情況下,我們需要將復雜的數組存儲在數據庫中或PHP中的文件中。有些人可能會使用PHP內置函數來完成這項任務。所謂復雜數組是具有多個數據類型或數組的元素的數組。

但是,我們已經有了一個方便的解決方案來處理這種情況。我們不必編寫自己的函數來將復雜數組轉換為格式化字符串。有兩種流行的變量序列化方法。(推薦:PHP教程)

1、serialize()

2、unserialize()

我們可以使用serialize()函數序列化PHP中的任何數據。serialize()函數接受一個參數,該參數是我們想要分類的數據并返回一個序列化的字符串。

程序如下:

 ?php //一個復雜的數組$myvar = array(  hello ,  42,  array(1, two ),  apple // 轉換成字符串 $string = serialize($myvar); // 打印序列化的數據echo $string; ? 

輸出:

a:4:{i:0;s:5: hello i:1;i:42;i:2;a:2:{i:0;i:1;i:1;s:3: two }i:3;s:5: apple }

從上面的代碼中,我們得到了一個具有序列化數據的變量$string。我們可以使用unserialize()函數來反序列化變量的值,以返回復雜數組$myvar的原始值。

serialize()和unserialize()函數示例:

 ?php// 一個復雜的數組$myvar = array( hello , array(1, two ), apple // 序列化上述數據$string = serialize($myvar);// 反序列化$string中的數據$newvar = unserialize($string); // 打印未序列化的數據print_r($newvar);? 

輸出:

Array [0] = hello [1] = 42 [2] = Array [0] = 1 [1] = two [3] = apple)

這是本機PHP序列化方法。但是,由于JSON近年來變得如此受歡迎,他們決定在PHP 5.2中添加對它的支持。現在,您可以使用json_encode()和json_decode()函數分別在PHP中序列化和反序列化數據。

由于JSON格式僅為文本格式,因此可以輕松地將其發送到服務器或從服務器發送,并且可以通過任何編程語言用作數據格式。

讓我們看看如何在PHP中使用json_encode():

 ?php // 一個復雜的數組$myvar = array(  hello ,  42,  array(1, two ),  apple // 序列化數據$string = json_encode($myvar); // 打印序列化的數據echo $string; ? 

輸出:

[ hello ,42,[1, two ], apple ]

我們可以使用json_decode()函數解碼上面程序中編碼的數據,以獲得原始復雜數組。

程序如下:

 ?php // 一個復雜的數組$myvar = array(  hello ,  42,  array(1, two ),  apple // 序列化數據$string = json_encode($myvar); // 解碼上面編碼的字符串$newvar = json_decode($string); // 打印解碼后的數據print_r($newvar); ? 

輸出:

Array [0] = hello [1] = 42 [2] = Array [0] = 1 [1] = two [3] = apple)

以上就是PHP如何序列化數據?的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 天津市| 夏河县| 乌兰察布市| 巩义市| 胶州市| 梓潼县| 双峰县| 东阿县| 会宁县| 汉寿县| 昌宁县| 舞钢市| 吉安县| 额敏县| 舒城县| 新津县| 桃园县| 彰武县| 成武县| 凌海市| 望谟县| 南丹县| 舞钢市| 乌拉特后旗| 万安县| 敦化市| 隆林| 盐亭县| 开化县| 武清区| 隆回县| 崇礼县| 林口县| 宜宾县| 运城市| 土默特左旗| 常德市| 邵武市| 光泽县| 甘谷县| 东至县|