Более быстрый способ указать аргументы функции по умолчанию в php - PullRequest
0 голосов
/ 07 апреля 2011

Если бы у меня была функция PHP, у которой было множество аргументов по умолчанию, все из которых были установлены на false, например:

function foo($foo = false, $bar = false, $foobar = false)
{
}

Есть ли быстрее (не в исполнении, ностиль кодирования, практика, количество символов, необходимое для написания кода и т. д.) как это сделать?

Ответы [ 3 ]

2 голосов
/ 07 апреля 2011
function foo($foo=!1,$bar=!1,$foobar=!1)
{
}
0 голосов
/ 07 апреля 2011
function foo($f = 0 , $b = 0 , $fb = 0) 

вы можете использовать 0 вместо false.

0 голосов
/ 07 апреля 2011
function foo(){
    $defaults = array_merge(array_fill(0, 3, false), func_get_args());
}

foo(); //defaults is array(false, false, false);

Я предпочитаю передавать массивы функциям / методам, чем вы делаете

function foo($defaults = array()){
    $defaults = array_merge(array('foo' => false, 'bar' => false, 'etc' => false), (array)$defaults);
    ...
    echo $defaults['foo']; // always set
    ...
}
...