Estou confuso sobre valores padrão para funções PHP. Digamos que eu tenho uma função como esta:
function foo($blah, $x = "some value", $y = "some other value") {
// code here!
}
E se eu quiser usar o argumento padrão para $ x e definir um argumento diferente para $ y?
Tenho experimentado maneiras diferentes e estou ficando cada vez mais confusa. Por exemplo, eu tentei estes dois:
foo("blah", null, "test");
foo("blah", "", "test");
Mas ambos não resultam em um argumento padrão adequado para $ x. Eu também tentei defini-lo pelo nome da variável.
foo("blah", $x, $y = "test");
Eu esperava que algo assim funcionasse. Mas não funciona como eu esperava. Parece que não importa o que eu faça, terei que digitar os argumentos padrão de qualquer maneira, toda vez que invocar a função. E devo estar perdendo algo óbvio.
foo("blah", , "test");
?