Мне нравится подход Javascript-esque с моими параметрами PHP. Это позволяет лучше настраивать «опции» и их значения по умолчанию (которые я сейчас расскажу). Например, допустим, у вас есть функция, которая возвращает диапазон в массиве. Параметр 1 - время начала, параметр 2 - время окончания, параметр 3 - временной интервал, и любая опция после этого является необязательной (например, «format» => «24-часовой», «include_seconds» => TRUE и т. Д. ).
Я бы определил функцию следующим образом:
function returnTimeInterval($startTime, $endTime, $interval, $options = array())
{
// the first thing to do is merge options in with our defaults
$options = array_merge(array(
"format" => "24-hour",
"include_seconds => TRUE
// etc.
), $options);
Это позволяет установить значения по умолчанию в функции, которые затем могут быть переопределены, что довольно круто. Конечно, вы должны позаботиться о том, чтобы странные, неиспользованные опции не были переданы, но я оставлю это вам. :)