Atitit php序列化 php的serialize序列化和json序列化
Atitit php序列化?php的serialize序列化和json序列化
?
?
PHP 對不同類型的數(shù)據(jù)用不同的字母進行標示,Yahoo 開發(fā)網(wǎng)站提供的Using Serialized PHP with
Yahoo! Web Services 一文中給出所有的字母標示及其含義:
a - array
b - boolean
d - double
i - integer
o - common object
r - reference
s - string
C - custom object
O - class
N - null
R - pointer reference
U - unicode string
N 表示的是NULL,而b、d、i、s?
?
作者::??★(attilax)>>>???綽號:老哇的爪子?(?全名::Attilax?Akbar?Al?Rapanui?阿提拉克斯?阿克巴?阿爾?拉帕努伊?)?漢字名:艾龍,??EMAIL:1466519819@qq.com
轉(zhuǎn)載請注明來源:?http://blog.csdn.net/attilax
?
4.1.數(shù)組的序列化
數(shù)組(array)通常被序列化為:
a:<n>:{<key 1><value 1><key 2><value 2>...<key n><value n>}
其中<n> 表示數(shù)組元素的個數(shù),<key 1>、<key 2>……<key n> 表示數(shù)組下標,<value 1>、<value
2>……<value n> 表示與下標相對應的數(shù)組元素的值。
下標的類型只能是整型或者字符串型,序列化后的格式跟整型和字符串型數(shù)據(jù)序列化后的格式相同。
數(shù)組元素值可以是任意類型,其序列化后的格式與其所對應的類型序列化后的格式相同。
4.2.對象的序列化
對象(object)通常被序列化為:
O:<length>:"<class name>":<n>:{<field name 1><field value 1><field name
2><field value 2>...<field name n><field value n>}
其中<length> 表示對象的類名<class name> 的字符串長度。<n> 表示對象中的字段1個數(shù)。這些字段
包括在對象所在類及其祖先類中用var、public、protected 和private 聲明的字段,但是不包括static 和
const 聲明的靜態(tài)字段。也就是說只有實例(instance)字段。
<filed name 1>、<filed name 2>……<filed name n>表示每個字段的字段名,而<filed value 1>、
<filed value 2>……<filed value n> 則表示與字段名所對應的字段值。
字段名是字符串型,序列化后格式與字符串型數(shù)據(jù)序列化后的格式相同。
字段值可以是任意類型,其序列化后的格式與其所對應的類型序列化后的格式相同。
但字段名的序列化與它們聲明的可見性是有關的,下面重點討論一下關于字段名的序列化。
?
?
PHP序列化_serialize_格式詳解 - 低調(diào)走過 - 博客頻道 - CSDN.NET.html
轉(zhuǎn)載于:https://www.cnblogs.com/attilax/p/5963347.html
總結
以上是生活随笔為你收集整理的Atitit php序列化 php的serialize序列化和json序列化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Xamarin 挖墙脚系列:Xamar
- 下一篇: php 控制循环