<?php
class Car {
public $speed = 10;
//在这里使用重载实现speedDown方法
public function __call($name,$args){
if($name=='speedDown'){
$this->speed-=10;
}
}
}
$car = new Car();
$car->speedDown(); //调用不存在的speedDown方法
echo $car->speed;
这里的重载不是c++或者java意义上的重载,而是php的一个默认函数__call($name,$args),当你要调用的函数不存在时,函数名(speedDown)传给形参$name,里面的参数传给形参$args,然而内部具体执行需要自己编写。
网友评论