99麻豆久久久国产免费福利精品,国产精品成人国产乱,玖玖操,手机看片169,国产精彩视频在线观看,午夜亚洲福利视频,国产伦乱视频

龍巖易富通網絡科技有限公司

龍巖小程序開發(fā),龍巖分銷系統(tǒng)

php函數(shù)serialize()與unserialize()

2015.09.10 | 764閱讀 | 0條評論 | php

serialize()和unserialize()在php手冊上的解釋是: serialize?— Generates a storable representation of a value serialize?— 產生一個可存儲的值的表示 unserialize?— Creates a PHP value from a stored representation unserialize?— 從已存儲的表示中創(chuàng)建 PHP 的值 其實serialize()就是將PHP中的變量如對象(object),數(shù)組(array)等等的值序列化為字符串后存儲起來.序列化的字符串我們可以存儲在其他地方如數(shù)據(jù)庫、Session、Cookie等,序列化的操作并不會丟失這些值的類型和結構。這樣這些變量的數(shù)據(jù)就可以在PHP頁面、甚至是不同PHP程序間傳遞了。 而unserialize()就是把序列化的字符串轉換回PHP的值。 這里再引用一段PHP手冊上的說明,看了上面的例子,應該很容易明白下面這些話的意思了 想要將已序列化的字符串變回 PHP 的值,可使用?unserialize()。serialize()?可處理除了?resource?之外的任何類型。甚至可以?serialize()?那些包含了指向其自身引用的數(shù)組。你正?serialize()?的數(shù)組/對象中的引用也將被存儲。 當序列化對象時,PHP 將試圖在序列動作之前調用該對象的成員函數(shù)?__sleep()。這樣就允許對象在被序列化之前做任何清除操作。類似的,當使用?unserialize()?恢復對象時, 將調用?__wakeup()?成員函數(shù) unserialize()?對單一的已序列化的變量進行操作,將其轉換回 PHP 的值。返回的是轉換之后的值,可為integer、float、string、array?或?object。如果傳遞的字符串不可解序列化,則返回?FALSE。 margic_quotes_gpc和magic_quotes_runtime配置項的設置會影響傳遞到unserialize()中的數(shù)據(jù)。

如果magic_quotes_gpc項是啟用的,那么在URL、POST變量以及cookies中傳遞的數(shù)據(jù)在反序列化之前必須用stripslashes()進行處理:
[php] <pre>$shopping = array('Poppy seed bagel' => 2,'Plain Bagel' =>1,'Lox' =>4); echo '<a href="next.php?cart='.urlencode(serialize($shopping)).'">next</a>';[/php]
margic_quotes_gpc和magic_quotes_runtime配置項的設置會影響傳遞到unserialize()中的數(shù)據(jù)。
如果magic_quotes_gpc項是啟用的,那么在URL、POST變量以及cookies中傳遞的數(shù)據(jù)在反序列化之前必須用stripslashes()進行處理:
[php] <pre>$new_cart = unserialize(stripslashes($cart)); //如果magic_quotes_gpc開啟 $new_cart = unserialize($cart);[/php]

贊 (

發(fā)表評論

呼玛县| 锡林郭勒盟| 闽清县| 新沂市| 肃北| 吴忠市| 瓦房店市| 修水县| 辽阳市| 拉萨市| 庄浪县| 灵寿县| 秦安县| 剑阁县| 永川市| 塔河县| 林甸县| 江川县| 洛浦县| 扎囊县| 黄浦区| 普安县| 灵宝市| 滨海县| 黄骅市| 肃北| 忻州市| 逊克县| 镇赉县| 黎平县| 蓬莱市| 鄂托克旗| 织金县| 延川县| 启东市| 色达县| 平舆县| 汕头市| 加查县| 望奎县| 玉溪市|