全网整合营销服务商

营销型网站+SEO优化+关键词快排=一站式服务

免费咨询热线:15959292472

「二连浩特市营销型网站建设」php魔术方法的认识

  

 

  在php中将所有以“__”即两个下划线开头的类方法保留为魔术方法,PHP中魔术方法有“__construct()”、“__destruct()”、“__call()”、“__callStatic()”、“__get()”等等。

  

 

  推荐:《PHP视频教程》

  魔术方法

  __construct(), __destruct(),后端开发 __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep(), __wakeup(), __toString(), __invoke(), __set_state(), __clone() 和 __debugInfo() 等方法在 PHP 中被称为魔术方法(Magic methods)。在命名自己的类方法时不能使用这些方法名,除非是想使用其魔术功能。

  

 

  Caution

  PHP 将所有以 __(两个下划线)开头的类方法保留为魔术方法。所以在定义类方法时,Golang除了上述魔术方法,建议不要以 __ 为前缀。

  

 

  __sleep() 和 __wakeup()

  public __sleep ( void ) : array

  __wakeup ( void ) : void

  serialize() 函数会检查类中是否存在一个魔术方法 __sleep()。如果存在,该方法会先被调用,然后才执行序列化操作。此功能可以用于清理对象,并返回一个包含对象中所有应被序列化的变量名称的数组。如果该方法未返回任何内容,则 NULL 被序列化,并产生一个 E_NOTICE 级别的错误。

  Note:

  __sleep() 不能返回父类的私有成员的名字。这样做会产生一个 E_NOTICE 级别的错误。可以用 Serializable 接口来替代。

  __sleep() 方法常用于提交未提交的数据,或类似的清理操作。同时,如果有一些很大的对象,但不需要全部保存,这个功能就很好用。

  与之相反,C#.Net教程。unserialize() 会检查是否存在一个 __wakeup() 方法。如果存在,则会先调用 __wakeup 方法,预先准备对象需要的资源。

  __wakeup() 经常用在反序列化操作中,例如重新建立数据库连接,或执行其它初始化操作。

  以上就是php魔术方法的认识的详细内容,「二连浩特市营销型网站建设」更多请关注久澳传媒编程栏目其它相关文章!

「二连浩特市营销型网站建设」php魔术方法的认识

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。