摘要: php对象复制、clone、浅复制与深复制实例详解 一、用clone(克隆)来复制对象 $obj1 = new Object(); $obj2 = clone $obj1; clone方法会触发对象里定义的__clone魔术方法 clone操作有一个非常大的缺陷:使用clone操作复制对象时,当被复制的对象有对其它对象的引用的时候,引用的对象将不会被复制。 PHP有串行化(serialize)和反串行化(unserialize)函数,只需要用serialize()将一个对象写入一个流,然后从流中读回对象,那么对象就被复制了。在JAVA语言里面,这个过程叫做“冷藏”和“解冻”。 $obj1 = new Object(); $obj2 = unserialize(serialize($obj1));//序列化然后反序列化 使用此方案时无法触发__clone魔术方法来完成一些附加操作,但会触发被复制对象和所有被引用对象的__sleep和__wakeup魔术方法。 阅读全文
posted @ 2019-12-03 18:49 大自然的流风 阅读(1849) 评论(0) 推荐(0) 编辑
摘要: 技术面试常见关键词 阿里Duboo / HSF 腾讯TARS 新浪Motan 头条Kite 谷歌gRPC / Stubby Apache的Thrift rpcx Hash HashMap 阅读全文
posted @ 2019-12-03 18:44 大自然的流风 阅读(270) 评论(0) 推荐(0) 编辑