這里重載為什么要設置參數,又為什么是兩個?
<?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;
2015-02-24
方法重載
public mixed ?__call ?? ? ( string $name ?? ?, array $arguments ?? ?)
在對象中調用一個不可訪問方法時,__call() 會被調用。
$name參數是要調用的方法名稱。$arguments參數是一個枚舉數組,包含著要傳遞給方法$name的參數。?
因為調用了不存在的方法speedDown 所以進行了重載,傳入了2個參數都存放在$args里 ?
var_dump($name,$args);可以明顯查看變量里面的內容