Я новичок в php и имею опыт кодирования в java и C. Поэтому дополнительный параметр немного запутан для меня. Я хотел бы знать, что если функция имеет два необязательных параметра, и если я передаю один аргумент, какой параметр будет сопоставлен с аргументом?Дополнительные параметры в php
ответ
Первый аргумент всегда передается первой переменной в параметрах, второй на втором и так на, независимо от того, являются ли они необязательными или нет.
Единственное различие между необязательным и необязательным параметром заключается в том, что при вызове не хватает аргументов для выполнения всех необязательных параметров.
function f($a = 1, $b, $c, $d = 2)
{
var_dump($a, $b, $c, $d);
}
f('x');
Внутри функции $a
будет «х», $b
и $c
будет нулевым и $d
будет 2 но предупреждение будет сгенерировано.
Поэтому нет смысла иметь необязательные параметры слева от необязательных, хотя это было бы синтаксически правильным, потому что вы никогда не могли оставить их в вызове без генерации предупреждения.
Порядок параметров никогда не изменяется (слева направо), поэтому, если вы укажете только один аргумент, первый параметр получит значение, второе значение будет иметь значение по умолчанию.
Например:
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);
Например
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 exceptions дополнительные параметры
- 2. Дополнительные параметры поиска в PHP
- 3. Дополнительные параметры URL
- 4. Дополнительные параметры в функции
- 5. Дополнительные параметры в Merge
- 6. Дополнительные параметры в Angular
- 7. дополнительные параметры форму
- 8. PHP передает дополнительные параметры функции обратного вызова
- 9. Дополнительные параметры для PHP списка функции
- 10. Дополнительные параметры SMPP
- 11. Бесконечные дополнительные параметры
- 12. SendFile передать дополнительные параметры
- 13. Дополнительные параметры GUILayout.Label
- 14. Дополнительные параметры для интерфейсов
- 15. Дополнительные выходные параметры
- 16. 2 дополнительные целочисленные параметры
- 17. Дополнительные параметры SSRS
- 18. Дополнительные параметры службы останова
- 19. Дополнительные параметры SSMS
- 20. Усовершенствование: требуются дополнительные параметры
- 21. Дополнительные параметры с Specflow
- 22. Twilio узел дополнительные параметры
- 23. Как документировать дополнительные параметры
- 24. Дополнительные параметры для FileSystemEventHandler
- 25. Инъекции зависимостей Дополнительные параметры
- 26. Несколько Дополнительные параметры JSDoc
- 27. CodeIgniter - Дополнительные параметры
- 28. Применить дополнительные параметры синтаксиса
- 29. Дополнительные параметры, вызывающие InternalErrorException
- 30. Дополнительные параметры фабрики FactoryGirl