一、PHP构造方法与成员方法的定义
成员方法是在类中定义的一种函数,用于执行特定的操作。构造方法也是一种成员方法,用于在对象实例被创建时初始化对象的状态,即为对象的属性赋初始值。
二、PHP构造方法与成员方法的区别
1. 命名不同:成员方法可以有任意的名字,而构造方法必须使用类的名字(__construct),并且没有返回值。
2. 触发机制不同:成员方法需要在对象实例化后调用,而构造方法会在对象实例化时自动调用,所以构造方法不需要手动调用。
3. 作用不同:成员方法用于执行对象的特定操作,而构造方法用于初始化对象的属性,为对象赋初值。
三、PHP构造方法与成员方法的使用
下面通过一个实例来演示PHP构造方法与成员方法的使用。
1.定义一个Person类
我们定义一个Person类,属性有姓名、年龄和性别,在构造方法中给属性赋初值,在成员方法中输出属性值。
class Person {
public $name;
public $age;
public $gender;
//构造方法
public function __construct($name, $age, $gender) {
$this->name = $name;
$this->age = $age;
$this->gender = $gender;
}
//成员方法
public function showInfo() {
echo "姓名:".$this->name."
";
echo "年龄:".$this->age."
";
echo "性别:".$this->gender."
";
}
}
2.实例化对象
我们实例化一个Person对象,这时候会自动调用构造方法,在构造方法中给属性赋初值。
//实例化对象
$p = new Person("张三", 20, "男");
3.调用成员方法
我们调用成员方法,输出属性值。
$p->showInfo();
输出结果为:
姓名:张三
年龄:20
性别:男
四、总结
通过上面的实例,我们可以看出,PHP构造方法与成员方法的区别在于命名、触发机制和作用。构造方法会在对象实例化时自动调用,而成员方法需要在对象实例化后手动调用。构造方法用于初始化对象的状态,为对象属性赋初值,而成员方法用于执行对象的特定操作。