亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

?__call($name,$args)這兩個參數分別代表什么?

__call($name,$args)這兩個參數分別代表什么?

正在回答

3 回答

是的,當然這個魔術方法是在調用本類沒有的方法才會運行;

0 回復 有任何疑惑可以回復我~
#1

慕的地4125150 提問者

非常感謝!
2017-04-20 回復 有任何疑惑可以回復我~

class Car3 {

? ? public $speed = 100;

//$name調用本類沒有的方法,$args是該方法帶的參數轉換的數組,function?__call(string?$function_name,?array?$arguments)

? ??public function __call($name, $args) { ? ?

? ? ? ? if ($name == 'speedUp') {

echo $name;

print_r($args); ? ?//用這個就可以看到效果了

? ? ? ? ? ? $this->speed += 10;

? ? ? ? }

? ? }

}

$car = new Car3();

$car->speedUp(2,3); //調用不存在的方法會使用重載

echo $car->speed;


1 回復 有任何疑惑可以回復我~

$name :就是你調用的函數名

?public function __call($name,$args){

? ? ? ? echo $name; // 數出來的就是 speedDown

? ? ? ? ?echo '<br/>';

? ? ? ? //echo $args;

? ? ? ? if($name=='speedDown'){

? ? ? ? ? ? ?$this->speed -= 10;

? ? ? ? }

? ? }

$args : 別人在調用call函數傳遞進來的參數數組。

1 回復 有任何疑惑可以回復我~
#1

慕的地4125150 提問者

我理解的對嗎
2017-04-20 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

?__call($name,$args)這兩個參數分別代表什么?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號