課程
/后端開(kāi)發(fā)
/PHP
/PHP進(jìn)階篇
__call($name,$args)這兩個(gè)參數(shù)分別代表什么?
2017-04-20
源自:PHP進(jìn)階篇 2-9
正在回答
是的,當(dāng)然這個(gè)魔術(shù)方法是在調(diào)用本類沒(méi)有的方法才會(huì)運(yùn)行;
慕的地4125150 提問(wèn)者
class Car3 {
? ? public $speed = 100;
//$name調(diào)用本類沒(méi)有的方法,$args是該方法帶的參數(shù)轉(zhuǎn)換的數(shù)組,function?__call(string?$function_name,?array?$arguments)
? ??public function __call($name, $args) { ? ?
? ? ? ? if ($name == 'speedUp') {
echo $name;
print_r($args); ? ?//用這個(gè)就可以看到效果了
? ? ? ? ? ? $this->speed += 10;
? ? ? ? }
? ? }
}
$car = new Car3();
$car->speedUp(2,3); //調(diào)用不存在的方法會(huì)使用重載
echo $car->speed;
$name :就是你調(diào)用的函數(shù)名
?public function __call($name,$args){
? ? ? ? echo $name; // 數(shù)出來(lái)的就是 speedDown
? ? ? ? ?echo '<br/>';
? ? ? ? //echo $args;
? ? ? ? if($name=='speedDown'){
? ? ? ? ? ? ?$this->speed -= 10;
$args : 別人在調(diào)用call函數(shù)傳遞進(jìn)來(lái)的參數(shù)數(shù)組。
舉報(bào)
輕松學(xué)習(xí)PHP中級(jí)課程,進(jìn)行全面了解,用PHP快速開(kāi)發(fā)網(wǎng)站程序
3 回答public function __call($name, $args)這里的$args是什么?
2 回答請(qǐng)問(wèn) 【public function __call($name,$args)】中$name ,$args 在屬性上有什么區(qū)別?
3 回答這里的 $name 和$args 分別代表什么 真心不懂
4 回答求答復(fù)__call($name, $args) 中的 $args 是干嘛使得
2 回答魔術(shù)方法 __call 為什么需要兩個(gè)形參?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2017-04-20
是的,當(dāng)然這個(gè)魔術(shù)方法是在調(diào)用本類沒(méi)有的方法才會(huì)運(yùn)行;
2017-04-22
class Car3 {
? ? public $speed = 100;
//$name調(diào)用本類沒(méi)有的方法,$args是該方法帶的參數(shù)轉(zhuǎn)換的數(shù)組,function?__call(string?$function_name,?array?$arguments)
? ??public function __call($name, $args) { ? ?
? ? ? ? if ($name == 'speedUp') {
echo $name;
print_r($args); ? ?//用這個(gè)就可以看到效果了
? ? ? ? ? ? $this->speed += 10;
? ? ? ? }
? ? }
}
$car = new Car3();
$car->speedUp(2,3); //調(diào)用不存在的方法會(huì)使用重載
echo $car->speed;
2017-04-20
$name :就是你調(diào)用的函數(shù)名
?public function __call($name,$args){
? ? ? ? echo $name; // 數(shù)出來(lái)的就是 speedDown
? ? ? ? ?echo '<br/>';
? ? ? ? //echo $args;
? ? ? ? if($name=='speedDown'){
? ? ? ? ? ? ?$this->speed -= 10;
? ? ? ? }
? ? }
$args : 別人在調(diào)用call函數(shù)傳遞進(jìn)來(lái)的參數(shù)數(shù)組。