課程
/后端開發(fā)
/PHP
/PHP進(jìn)階篇
知道$name,但不清楚$args有什么用
2017-02-06
源自:PHP進(jìn)階篇 2-9
正在回答
<?php
class Car {
? ? public $speed = 10;
? ? //在這里使用重載實(shí)現(xiàn)speedDown方法
? ??
? ? public function __call($name, $args) {
? ? ? ??
? ? ? ? ?$num=count($args); ?
? ? ? ? ? ? if($num==2){ ?
? ? ? ? ? ? if ($name == 'speedDown') {
? ? ? ? ? ? $this->speed -= 10;
? ? ? ? ? ? }
? ? ? ? } ?
? ? }
}
$car = new Car();
$car->speedDown('speedDown','223e'); //調(diào)用不存在的speedDown方法
echo $car->speed;
請看改過的這段代碼?$args其實(shí)就是傳遞的參數(shù)個(gè)數(shù)。這里傳遞$car->speedDown('speedDown','223e');兩個(gè)參數(shù)($car->speedUp(); 這樣寫也行 但是只能傳遞一個(gè)參數(shù))所以在__call函數(shù)里判斷
?$num=count($args); ?
得到正確的結(jié)果 如果只傳遞一個(gè)參數(shù) 那么$arg的值就是1
你看一下這個(gè)例子就明白了。
楓雪孤城 提問者
這里的$name對應(yīng)的是speedDown這個(gè)方法,$args是傳進(jìn)來的參數(shù)以數(shù)組的形式存在,傳的是$car->speedDown()這個(gè)方法里面的值
舉報(bào)
輕松學(xué)習(xí)PHP中級課程,進(jìn)行全面了解,用PHP快速開發(fā)網(wǎng)站程序
6 回答fopen()l里面的rb是什么?有啥作用?feof()函數(shù)有什么作用??
3 回答public function __call($name, $args)這里的$args是什么?
1 回答這種函數(shù)有什么用 和普通的函數(shù)有什么區(qū)別,在什么情況下會用這個(gè)
2 回答克隆函數(shù)里面的內(nèi)容的$obj指的是什么
1 回答函數(shù)里面的return $this->name具體是什么意思?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2017-02-06
<?php
class Car {
? ? public $speed = 10;
? ? //在這里使用重載實(shí)現(xiàn)speedDown方法
? ??
? ??
? ? public function __call($name, $args) {
? ? ? ??
? ? ? ? ?$num=count($args); ?
? ? ? ? ? ? if($num==2){ ?
? ? ? ? ? ? if ($name == 'speedDown') {
? ? ? ? ? ? $this->speed -= 10;
? ? ? ? ? ? }
? ? ? ? } ?
? ? }
}
$car = new Car();
$car->speedDown('speedDown','223e'); //調(diào)用不存在的speedDown方法
echo $car->speed;
請看改過的這段代碼?$args其實(shí)就是傳遞的參數(shù)個(gè)數(shù)。這里傳遞$car->speedDown('speedDown','223e');兩個(gè)參數(shù)($car->speedUp(); 這樣寫也行 但是只能傳遞一個(gè)參數(shù))所以在__call函數(shù)里判斷
?$num=count($args); ?
? ? ? ? ? ? if($num==2){ ?
得到正確的結(jié)果 如果只傳遞一個(gè)參數(shù) 那么$arg的值就是1
你看一下這個(gè)例子就明白了。
2017-02-06
這里的$name對應(yīng)的是speedDown這個(gè)方法,$args是傳進(jìn)來的參數(shù)以數(shù)組的形式存在,傳的是$car->speedDown()這個(gè)方法里面的值