数码资讯
PHP对象的浅副本和深副本的详细说明
PHP对象的浅副本和深副本的详细说明 最近注意到不同的对象这一问题在~ ~ PHP和clone'at T原型模型 实例代码: 聚合 类obja { 公共$ = 0; 公共objb美元; / /包含的对象 功能__construct(){ 美元-> objb =新objb(); } 只有实现以下方法才
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
PHP对象的浅副本和深副本的详细说明
最近注意到不同的对象这一问题在~ ~ PHP和clone'at T原型模型
实例代码:
聚合
类obja {
公共$ = 0;
公共objb美元; / /包含的对象
功能__construct(){
美元-> objb =新objb();
}
只有实现以下方法才能实现深拷贝聚合能力
/ *功能__clone(){
美元-> objb =克隆美元-> objb;
}
}
类objb {
公众num2 = 0美元;
}
原型对象
obja美元=新obja();
复制对象(=/复制引用)
obja2 = obja美元美元;
obja2 -> num = 2美元;
随着obja美元->民 / / $ obja2 -> Num也改变了
print_r($ obja ->数); / / 2
print_r($ obja2 ->数); / / 2
复制对象( / / clone'keyword克隆)
obja3 =克隆obja美元美元;
obja3 -> num = 4美元;
随着obja3美元->民 / / $ obja ->数没有变化。
print_r($ obja ->数); / / 2
print_r($ obja3 ->数); / / 4
但是克隆(对象 / /包含在对象的集合体)包含其他对象当复制是一个参考(objb)
obja3美元-> objb -> num2 = 7;
print_r($ obja3 -> objb -> num2。); / /结果是7
print_r($ obja -> objb -> num2。); / /结果是7
如果您有任何问题,请在本站留言或与社区交谈。谢谢你的阅读。我希望你能帮助你。感谢您对本站的支持。
最近注意到不同的对象这一问题在~ ~ PHP和clone'at T原型模型
实例代码:
聚合
类obja {
公共$ = 0;
公共objb美元; / /包含的对象
功能__construct(){
美元-> objb =新objb();
}
只有实现以下方法才能实现深拷贝聚合能力
/ *功能__clone(){
美元-> objb =克隆美元-> objb;
}
}
类objb {
公众num2 = 0美元;
}
原型对象
obja美元=新obja();
复制对象(=/复制引用)
obja2 = obja美元美元;
obja2 -> num = 2美元;
随着obja美元->民 / / $ obja2 -> Num也改变了
print_r($ obja ->数); / / 2
print_r($ obja2 ->数); / / 2
复制对象( / / clone'keyword克隆)
obja3 =克隆obja美元美元;
obja3 -> num = 4美元;
随着obja3美元->民 / / $ obja ->数没有变化。
print_r($ obja ->数); / / 2
print_r($ obja3 ->数); / / 4
但是克隆(对象 / /包含在对象的集合体)包含其他对象当复制是一个参考(objb)
obja3美元-> objb -> num2 = 7;
print_r($ obja3 -> objb -> num2。); / /结果是7
print_r($ obja -> objb -> num2。); / /结果是7
如果您有任何问题,请在本站留言或与社区交谈。谢谢你的阅读。我希望你能帮助你。感谢您对本站的支持。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。