Как установить необязательный параметр в PHP после первого необязательного параметра - PullRequest
5 голосов
/ 27 июля 2009

Я довольно новичок в php и пытаюсь понять, как мне установить необязательный параметр после первого необязательного параметра?

Например, у меня есть следующий код:

function testParam($fruit, $veg='pota',$test='default test'){
echo '<br>$fruit = '.$fruit;
echo '<br>$veg = '.$veg;
echo '<br>Test = '.$test;
}

Если я сделаю следующие вызовы:

echo 'with all parama';
testParam('apple','carrot','some string');
//we get:
//with all parama
//$fruit = apple
//$veg = carrot
//Test = some string

echo '<hr> missing veg';
testParam('apple','','something');
//we get:
//missing veg
//$fruit = apple
//$veg = 
//Test = something

echo '<hr> This wont work';
testParam('apple',,'i am set');

Я хочу попробовать сделать вызов, чтобы в последнем примере я показал 'pota' в качестве параметра $ veg по умолчанию, но передал в $ test 'яset '.

Полагаю, я могу передать 0 в $ veg, а затем разветвить его в коде, чтобы сказать, что если $ veg = 0, тогда использовать' pota ', но мне просто интересно, есть ли какой-то другой синтаксис, поскольку я не могу найти что-либо вphp.net об этом.

1 Ответ

2 голосов
/ 27 июля 2009

К сожалению, вы не можете сделать это в PHP.

Вы должны передать 0, или null, или какое-то другое значение, а затем, если значение равно 0 или null, измените его назначение по умолчанию.

Здесь - это еще один вопрос, который должен дать вам больше информации.

...