php序列化函數(shù)serialize() 和 unserialize() 與原生函數(shù)對比
php中有格式化字符串并轉(zhuǎn)換成數(shù)組或?qū)ο蟮暮梅椒ǎ葱蛄谢幚怼?br /> 有兩種序列化變量的方法。
以下示例,使用 serialize() 和 unserialize() 函數(shù):
// a complex array $myvar = array( 'hello', 42, array(1,'two'), 'apple' ); // convert to a string $string = serialize($myvar); echo $string; /* prints 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";} */ // you can reproduce the original variable $newvar = unserialize($string); print_r($newvar); /* prints Array ( [0] => hello [1] => 42 [2] => Array ( [0] => 1 [1] => two ) [3] => apple ) */
這是原生的 PHP 序列化方法。
然而,由于 JSON 近年來大受歡迎,PHP5.2 中已經(jīng)加入了對 JSON 格式的支持。
現(xiàn)在你可以使用 json_encode() 和 json_decode() 函數(shù):
// a complex array $myvar = array( 'hello', 42, array(1,'two'), 'apple' ); // convert to a string $string = json_encode($myvar); echo $string; /* prints ["hello",42,[1,"two"],"apple"] */ // you can reproduce the original variable $newvar = json_decode($string); print_r($newvar); /* prints Array ( [0] => hello [1] => 42 [2] => Array ( [0] => 1 [1] => two ) [3] => apple ) */
這將更為行之有效,尤其與 JavaScript 等許多其他語言兼容。
注意:對于復(fù)雜的對象,某些信息可能會丟失。
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
用windows下編譯過的eAccelerator for PHP 5.1.6實(shí)現(xiàn)php加速的使用方法
用windows下編譯過的eAccelerator for PHP 5.1.6實(shí)現(xiàn)php加速的使用方法...2007-09-09初識通用數(shù)據(jù)庫操作類——前端easyui-datagrid,form(php)
這篇文章主要介紹了初識通用數(shù)據(jù)庫操作類——前端easyui-datagrid,form(php),實(shí)現(xiàn)代碼比較簡單,有需要的小伙伴歡迎來參考2015-07-07php對包含html標(biāo)簽的字符串進(jìn)行截取的函數(shù)分享
這篇文章主要介紹了php對包含html標(biāo)簽的字符串進(jìn)行截取的函數(shù)分享,相比普通的字符串截取更為強(qiáng)大,用在一些特殊場合,需要的朋友可以參考下2014-06-06Laravel中重寫資源路由自定義URL的實(shí)現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于Laravel中重寫資源路由自定義URL的實(shí)現(xiàn)方法,需要的朋友可以參考下2017-08-08php根據(jù)地址獲取百度地圖經(jīng)緯度的實(shí)例方法
在本篇文章里小編給大家整理了關(guān)于php根據(jù)地址獲取百度地圖經(jīng)緯度的實(shí)例方法,有需要的朋友們可以學(xué)習(xí)下。2019-09-09PHP時間戳與日期之間轉(zhuǎn)換的實(shí)例介紹
本篇文章小編為大家介紹,PHP時間戳與日期之間轉(zhuǎn)換的實(shí)例介紹。需要的朋友參考下2013-04-04