我是新來的PHP和Java和C編碼經驗。所以可選參數是有點令我困惑。我想知道如果一個函數有兩個可選參數,並且如果我傳遞一個參數,哪個參數將映射到參數?在php中的可選參數
0
A
回答
1
第一個參數總是傳遞給第一個變量的參數,第二至第二等在,無論它們是否是可選的。
可選參數和非可選參數之間唯一的區別是當調用中沒有足夠的參數來滿足所有非可選參數時會引發警告。
function f($a = 1, $b, $c, $d = 2)
{
var_dump($a, $b, $c, $d);
}
f('x');
功能$a
內則是 「X」,$b
和$c
將空和$d
將是2 但警告將被拋出。
因此,將可選參數留給非可選參數是沒有意義的 - 雖然這在句法上是正確的 - 因爲在不產生警告的情況下,您無法將它們留在調用中。
5
參數順序從不改變(從左到右),所以如果只提供一個參數,第一個參數將接收該值,第二個參數將具有默認值。
例如:
function foo($a = 1, $b = 2) {}
foo(); // $a = 1, $b = 2
foo(3); // $a = 3, $b = 2
foo(4, 5); // $a = 4, $b = 5
注意,有沒有辦法設置一個值$b
,同時仍保留默認值$a
,由於參數的順序。你將不得不調用foo()
這樣來實現這一目標:
foo(1, 6);
0
例如
function test($test = null, $test_2 = null, $test_3 = null) {
}
test(1) => $test=1;
test(1,1) => $test=1;$test_2=1;
test(1,1,1) => $test=1;$test_2=1;$test_3=1;
相關問題
- 1. 函數php中的可選參數?
- 2. 在PHP可選參數與phpDocumentor的
- 3. PHP接口可選參數
- 4. PHP - 許多可選參數
- 5. PHP - 使參考參數可選?
- 6. 在可選參數
- 7. PHP可選動態函數參數
- 8. php mysqli函數堅持可選參數
- 9. PHP類和函數可選參數
- 10. dplyr:mutate_each中的可選參數
- 11. defgeneric中的可選參數?
- 12. VBscript中的可選參數
- 13. Python中的可選參數
- 14. 在PHP函數中傳遞可選參數
- 15. 在CodeIgniter中的可選參數
- 16. Yii2,在rounte中的可選參數
- 17. PHP亂探測器可選參數
- 18. 可選參數PHP列表功能
- 19. SQL更新可選參數PHP
- 20. 可選參數/參數在紅寶石
- 21. 可選參數
- 22. 可選參數
- 23. 可選參數
- 24. 可選參數
- 25. 可選參數
- 26. 可選參數
- 27. 可選參數
- 28. 可選參數
- 29. 可選參數
- 30. 可選參數