PHP中$this和$that指针使用实例
在PHP世界中,存在两个特殊的指针:$this和$that。它们在特定的情境下扮演着举足轻重的角色,尤其是在处理对象克隆时。让我们通过实际的例子来揭示它们的差异和功能。
我们有一个名为Person的类,它具有名字、性别和年龄等属性。当我们创建一个新的Person对象时,这些属性会被初始化。当我们需要对一个已存在的对象进行复制,即克隆时,就会涉及到$this和$that这两个指针。
在PHP5中,当对象被克隆时,会自动调用一个特殊的方法:__clone()。这个方法允许我们在复制对象时修改其属性或行为。在这个方法中,$this指针指向的是新创建的对象(克隆的副本),而$that指针则指向原始对象。
让我们看一个具体的实例。我们创建一个名为Person的类,其中包含一个__clone()方法。在这个方法中,我们改变克隆对象的名字,使其包含原始对象的名称以及“我是复制的”这个前缀。
当运行以下代码时:
```php
$p1 = new Person("张三", "男", 20); // 创建一个Person对象
$p2 = clone $p1; // 克隆这个对象
$p1->say(); // 输出原始对象的属性
$p2->say(); // 输出克隆对象的属性
```
你将看到以下输出:
```
我的名字叫张三 性别男 我的年龄是20
我的名字叫我是复制的张三 性别男 我的年龄是20
```
在这个例子中,通过调用__clone()方法并操作$this和$that指针,我们成功地修改了克隆对象的属性,使其在输出时显示其是复制自原始对象的信息。这仅仅是$this和$that指针在PHP中的一个小应用,它们在实际开发中有着更广泛的应用场景。希望通过这个例子,你能更深入地理解这两个指针在PHP中的使用方式和重要性。
编程语言
- PHP中$this和$that指针使用实例
- js实现图片和链接文字同步切换特效的方法
- 详解JavaScript中void语句的使用
- php求今天、昨天、明天时间戳的简单实现方法
- 基于JavaScript实现 网页切出 网站title变化代码
- MSSQL数据加密解密代码
- 浅谈jQuery操作类数组的工具方法
- jQuery Ajax实现跨域请求
- jquery实现模拟百分比进度条渐变效果代码
- JavaScript中的toUTCString()方法使用详解
- vue实现添加与删除图书功能
- ASP.NET MVC 中实现基于角色的权限控制的处理方法
- Datatable删除行的Delete和Remove方法的区别介绍
- 按IE后退按钮时让JSP不读缓存
- SQLSERVER的排序问题结果不是想要的
- MySql服务未知原因消失解决方法