PHP拥有序列化方法

2016-02-19 16:41 9 1 收藏

有一种朋友不在生活里,却在生命力;有一种陪伴不在身边,却在心间。图老师即在大家的生活中又在身边。这么贴心的服务你感受到了吗?话不多说下面就和大家分享PHP拥有序列化方法吧。

【 tulaoshi.com - Web开发 】

PHP不支持永久对象,在OOP中永久对象是可以在多个应用的引用中保持状态和功能的对象,这意味着拥有将对象保存到一个文件或数据库中的能力,而且可以在以后装入对象。这就是所谓的序列化机制。PHP 拥有序列化方法,它可以通过对象进行调用,序列化方法可以返回对象的字符串表示。然而,序列化只保存了对象的成员数据而不包话方法。

  在PHP4中,如果你将对象序列化到字符串$s中,然后释放对象,接着反序列化对象到$obj,你可以继续使用对象的方法!我不建议这样去做,因为(a)文档中没有保证这种行为在以后的版本中仍然可以使用。(b) 这个可能导致一种误解,在你把一个序列化后的版本保存到磁盘并退出脚本时。当以后运行这个脚本时,你不能期待着在反序列化一个对象时,对象的方法也会在那里,因为字符串表示根本就不包括方法。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  总而言之,PHP 进行序列化对于保存对象的成员变量非常有用。(你也可以将相关数组和数组序列化到一个文件中)。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

来源:http://www.tulaoshi.com/n/20160219/1612777.html

延伸阅读
标签: Web开发
通过序列化和反序列化泛型数据实体集合来实现持久化数据对象的方法 我们在平时使用数据库的时候,经常会碰到一个问题,就是不希望数据实体对象插入数据库中, 却有想持久化的时候,那么就可以用序列化成 XML字符串,来保存到其他地方,由于生成的是字符串,所以可以保存到任意我们想保存的地方。比如 asp.net的ViewState,cookie...
假设有一下一个实体类。 using System; using System.Xml; using System.Xml.Serialization; namespace TestPerson { public class Person { public string FullName; [NonSerialized()] public string Password; public Male sex; } public enum Male { M, F } } 先决定用xml 序列化把对象的状态dump到一个xml文件。 代...
我们知道,在java中,将一个非原型类型类型的对象引用,赋值给另一个对象的引用之后,这两个引用就指向了同一个对象,如: 代码如下: public class DeepCloneTest {  private class CloneTest {   private Long myLong = new Long(1);  }  public static void main(String args[]) {   new DeepCloneTes...
序列化对象: 代码如下: package com.chen.seriaizable; import java.io.Serializable; import java.util.List; @SuppressWarnings("serial") public class Student implements Serializable {  private String name;  private String id;  private int age;  private ListStudent students;  public String...
标签: Java JAVA基础
java中处处体现着简单的程序设计风格,序列化作为最常用的功能之一,在java中的设计尤为“简单”。在ObjectInputStream 和ObjectOutputStream的帮助下,我们可以轻松的实现序列化。 只要我们的class 实现了java.io.Serializable接口,就可以利用ObjectOutputStream的writeObject()方法将一个对象序列化;利用ObjectInput...

经验教程

636

收藏

40
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部