PHP面向对象编程
类和对象
在PHP中定义类和创建对象:
<?php
class Car {
public $color;
public $model;
public function __construct($color, $model) {
$this->color = $color;
$this->model = $model;
}
public function message() {
return "我的车是" . $this->color . "色的" . $this->model;
}
}
$myCar = new Car("红", "丰田");
echo $myCar->message();
?>
继承
类可以继承另一个类的属性和方法:
<?php
class Vehicle {
public $brand;
public function honk() {
echo "嘟嘟!";
}
}
class Car extends Vehicle {
public $model;
public function display() {
echo "品牌: " . $this->brand . ", 型号: " . $this->model;
}
}
$car = new Car();
$car->brand = "本田";
$car->model = "雅阁";
$car->display();
?>
访问修饰符
PHP支持三种访问修饰符:
- public - 可以从任何地方访问
- protected - 只能在类内部和子类中访问
- private - 只能在类内部访问
<?php
class MyClass {
public $public = "公开";
protected $protected = "受保护";
private $private = "私有";
public function getPrivate() {
return $this->private;
}
}
?>
接口和抽象类
使用接口定义类必须实现的方法:
<?php
interface Animal {
public function makeSound();
}
class Dog implements Animal {
public function makeSound() {
echo "汪汪!";
}
}
class Cat implements Animal {
public function makeSound() {
echo "喵喵!";
}
}
?>