php序列化作用在哪些上
php序列化作用在以下几个方面:1.将变量或对象转换成字符串;2.将对象转换为容易传输的格式;3.保证对象的完整性和可传递性。在php中,将变量或对象转换成字符串,主要是利用serialize函数进行实现。
1.将变量或对象转换成字符串
序列化可以将PHP中对象、类、数组、变量、匿名函数等,转化为字符串,这样用户就方便储存和传输,对服务器或web中减轻一定的压力。
2.将对象转换为容易传输的格式
序列化就是是将对象转换为容易传输的格式的过程,一般情况下转化为流文件,放入内存或者IO文件中。例如,可以序列化一个对象,然后使用HTTP 通过Internet 在客户端和服务器之间传输该对象,或者和其它应用程序共享使用。
3.保证对象的完整性和可传递性
序列化最重要的作用是:在传递和保存对象时,不会丢失其类型和结构,以保证对象的完整性和可传递性。
本质上讲,序列化就是把实体对象状态按照一定的格式写入到有序字节流,反序列化就是从有序字节流重建对象,恢复对象状态。因此,序列化的核心作用就是对象状态的保存和重建。
延伸阅读
php反序列化的作用是什么
反序列化最重要的作用是:根据字节流中保存的对象状态及描述信息,通过反序列化重建对象。反序列化实际上可以理解为是将字符串转为对象、类、数组、变量、匿名函数的过程。
php中的序列化和反序列化分别通过函数serialize()和unserialize()即可实现。一般,serialize()的参数可以是resource类型外的所有变量类型,最常见的是用来序列化对象;而unseialize()将serialize的返回结果作为参数,进行反序列化,得到原对象。