In C++ kun je (volgens mij, ik ben er niet zo bedreven in) een functie maken die oneindig veel argumenten kan slikken door iets te typen als:
<?php
public string Functie(string[] args)
{
...
}
?>
De argumenten zjin van het type string en worden in een array opgeslagen. Nu vraag ik me af of dat ook in php kan, zonder eerst de argumenten in een array te zetten en die aan de functie te geven zoals in het volgende voorbeeld.
Op die manier werkt het in PHP niet. Het is ook een beetje onzin om een oneindig aantal argumenten aan een functie mee te willen geven, als je ook arrays en objecten aan een functie mee kunt geven.
Je kunt in PHP wel optionele argumenten meegeven:
<?php
function mijn_functie ($arg1, $arg2 = false, $arg3 = true) {
// hier de functie-body
}
?>
Je kunt deze functie dan met 1, 2, of 3 argumenten aanroepen.
Nu je het zegt, er zijn ook PHP functies waarbij het kan, zoals unset. Toch even zoeken hoe die werken.
[edit]Misschien heb je iets aan deze pagina[/edit]
@ Webmakerij: klopt, dat hadden we inmiddels al ontdekt ;-)
@ Rolf: ik merk in de dagelijks praktijk dat ik bijna nooit functies ontwerp met meer dan vier, vijf argumenten. Als het er nog meer worden ga ik al heel snel naar een array als argument. Maar het is mooi dat PHP de mogelijkheid biedt om te doen wat jij wilt.
Het is mooi dat de mogelijkheid er is al zou ik het in dit geval toch met een array oplossen gezien je anders altijd rekening moet houden wat de eerdere argumenten betekenen.
En mocht je bij nader inzien nog een argument toe willen voegen ...