Именованные параметры отлично подходят для длинного списка опций в пользовательской функции или классе PHP. Но как насчет вложенных опций?Вложенные именованные параметры в PHP
Например:
function foobar($foo,$bar,$options=array()) {
$default_options = array('option1'=>'','option2'=>'hello','option3'=>array('option1'=>true,'option2'=>''));
$options = array_merge($default_options,(array)$options);
}
Так вариант 3 является другой массив с подопций. Должны ли мы поместить их в цикл for, чтобы объединить субоптимы тоже? Что бы вы, ребята, сделали в этом случае?
EDIT:
Это вызов функции:
foobar('foo','bar',array('option1'=>'foo','option3'=>array('option1'=>false)));
Ending структура $ опций:
array(
'option1'=>'foo',
'option2'=>'hello',
'option3'=>array(
'option1'=>false,
'option2'=>''
);
Проверить array_merge (array1, array2); – powtac
Да, но я делаю это уже: $ options = array_merge ($ default_options, (array) $ options); – DADU
Еще один вариант - добавить каждый вложенный массив параметров в качестве дополнительного параметра. Трудно выбрать между вложенным массивом или одним дополнительным параметром, который делает его позиционным параметром. – DADU