Doe gewoon wat wilt en hou je het in je project een beetje constant. Als je hier al nachten over gaat nadenken komt je framework nooit af.
Overigens wat leuke side weetjes:
Voor php5.6 staat omder andere named parameters en skipped parameters op de planning. Dat laatste zorgt ervoor dat je optionele parameters makkelijk kunt skippen doormiddel van het default keyword. Dat betekend dat je niet perse de verplichte voor de optionele parameters moet doen.
De eerste rfc zorgt ervoor dat de volgorde niks meer uitmaakt, omdat je parameters bij naam instelt.
php is zelf niet al te consequent wat de volgorde betreft.
bv. het is niet altijd eerst $needle en daarna $haystack.
Die named parameters lijken me wel iets.
Dat lijkt dan vrij hard op het doorgeven van 1 options-array (of object) aan een functie.
Kan je vandaag al perfect zelf maken.
In javascript komt dat al wat vaker voor. bv. jQuery's $.ajax geef je 1 options parameter mee in object-vorm, terwijl je bij $.post verschillende parameters in de juiste volgorde moet zetten
Ik kies altijd voor die object-notatie, al is het maar omdat ik gemakkelijker de key onthoud dan de volgorde.