Как вы создаете необязательные аргументы в php?
В руководстве по PHP, чтобы показать синтаксис 9X_php-frameworks функций с необязательными параметрами, они 9X_php-include заключают в скобки каждый набор зависимых 9X_php-cli необязательных параметров. Например, для 9X_php функции date()
инструкция гласит:
string date ( string $format [, int $timestamp = time() ] )
Где $timestamp
— необязательный 9X_php-session параметр, и если оставить его пустым, по 9X_php умолчанию используется возвращаемое значение 9X_php5 функции time()
.
Как вы создаете подобные необязательные 9X_php-namespaces параметры при определении пользовательской 9X_php-namespaces функции в PHP?
Ответ #1
Ответ на вопрос: Как вы создаете необязательные аргументы в php?
Как и в руководстве, используйте знак равенства 9X_php-mail (=
) в определении параметров:
function dosomething($var1, $var2, $var3 = 'somevalue'){
// Rest of function here...
}
- `function dosomething ($ var1, $ va ...
Ответ #2
Ответ на вопрос: Как вы создаете необязательные аргументы в php?
Значение аргумента по умолчанию должно быть 9X_php-session константным выражением. Это не может быть 9X_php-cli переменная или вызов функции.
Однако, если 9X_phtml вам нужна эта функция:
function foo($foo, $bar = false) { if(!$bar) { $bar = $foo; } }
Предполагая, что
$bar
, конечно, не 9X_php-cgi должно быть логическим значением.
- однако это будет оценивать, было ли передано 0 или «ложь ...
Ответ #3
Ответ на вопрос: Как вы создаете необязательные аргументы в php?
Некоторые заметки, которые я также нашел 9X_php-cgi полезными:
Сохраняйте значения по умолчанию 9X_php-date справа.
function whatever($var1, $var2, $var3="constant", $var4="another")
Значение аргумента по умолчанию должно 9X_php-include быть константным выражением. Это не может 9X_php-cgi быть переменная или вызов функции.
Ответ #4
Ответ на вопрос: Как вы создаете необязательные аргументы в php?
Присвойте необязательному аргументу значение 9X_php-errors по умолчанию.
function date ($format, $timestamp='') {
}
Ответ #5
Ответ на вопрос: Как вы создаете необязательные аргументы в php?
Функция даты может быть определена примерно 9X_php-mail так:
function date($format, $timestamp = null)
{
if ($timestamp === null) {
$timestamp = time();
}
// Format the timestamp according to $format
}
Обычно вы устанавливаете значение по 9X_php-cgi умолчанию следующим образом:
function foo($required, $optional = 42)
{
// This function can be passed one or more arguments
}
Однако только 9X_php-oop литералы являются допустимыми аргументами по умолчанию, поэтому 9X_php-cli я использовал null
в качестве аргумента по умолчанию 9X_php-frameworks в первом примере, не $timestamp = time()
, и объединил его. с 9X_phtml нулевой проверкой. Литералы включают массивы 9X_php5 (array()
или []
), логические значения, числа, строки 9X_php и null
.
Ответ #6
Ответ на вопрос: Как вы создаете необязательные аргументы в php?
Если вы не знаете, сколько атрибутов необходимо 9X_php-session обработать, вы можете использовать токен 9X_phtml списка аргументов с переменным числом аргументов 9X_php-cgi (...
), представленный в PHP 5.6 (see full documentation here).
Синтаксис:
function ([ ]...<$paramName>) {}
Например:
function someVariadricFunc(...$arguments) {
foreach ($arguments as $arg) {
// do some stuff with $arg...
}
}
someVariadricFunc(); // an empty array going to be passed
someVariadricFunc('apple'); // provides a one-element array
someVariadricFunc('apple', 'pear', 'orange', 'banana');
Как 9X_php-oop видите, этот токен в основном превращает 9X_php-include все параметры в массив, который вы можете 9X_php-readfile обрабатывать любым способом.
Ответ #7
Ответ на вопрос: Как вы создаете необязательные аргументы в php?
Начиная с версии 7.1 существует подсказка 9X_phtml типа для параметров, допускающих значение 9X_php-frameworks NULL
function func(?Object $object) {}
Это будет работать в следующих случаях:
func(null); //as nullable parameter
func(new Object()); // as parameter of declared type
Но 9X_php для необязательного значения подпись должна 9X_php-fpm выглядеть так.
function func(Object $object = null) {} // In case of objects
function func(?Object $object = null) {} // or the same with nullable parameter
function func(string $object = '') {} // In case of scalar type - string, with string value as default value
function func(string $object = null) {} // In case of scalar type - string, with null as default value
function func(?string $object = '') {} // or the same with nullable parameter
function func(int $object = 0) {} // In case of scalar type - integer, with integer value as default value
function func(int $object = null) {} // In case of scalar type - integer, with null as default value
function func(?int $object = 0) {} // or the same with nullable parameter
чем его можно вызвать как
func(); // as optional parameter
func(null); // as nullable parameter
func(new Object()); // as parameter of declared type
-
11
-
18
-
13
-
12
-
26
-
6
-
11
-
9
-
7
-
5
-
6
-
3
-
8
-
6
-
8
-
5
-
10
-
12
-
4
-
13
-
11
-
4
-
22
-
7
-
7
-
20
-
6
-
4
-
4
-
9
-
8
-
5
-
4
-
8
-
16
-
12
-
9
-
6
-
28
-
6
-
26
-
7
-
13
-
3
-
10
-
14
-
8
-
19
-
13
-
2