Можно ли передать ассоциативный массив функции и рассматривать эти элементы как отдельные параметры? [дубликат]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Можно ли передать ассоциативный массив функции и рассматривать эти элементы как отдельные параметры? [дубликат]

Сообщение Anonymous »

Короче говоря, мне нужна своего рода функция экспорта() (но не экспорт()), она создает новые переменные в таблице символов и возвращает количество созданных переменных.
Я пытаюсь выяснить, можно ли объявить функцию

Код: Выделить всё

function foo($bar, $baz)
{
var_dump(func_get_args());
}
И после этого передайте массив, чтобы каждое значение массива представляло параметры.
Просто интересно, так ли это возможно (кажется, нет).
Мне это нужно для динамической загрузки, поэтому количество аргументов и размер массива могут различаться - пожалуйста, не предлагайте передать это как

Код: Выделить всё

foo($arr['bar']);
и так далее.
Опять же, идеальное решение будет выглядеть так

Код: Выделить всё

foo(array('foo'=>'1', 'bar'=>'2', ..., 'zzz'=>64));
для декларации

Код: Выделить всё

function foo($foo, $bar, ..., $zzz) {}
Насколько я помню, в некоторых динамических языках списки могут вести себя подобным образом (или, может быть, я ошибаюсь).
(Я хочу создать динамически параметризованные методы в классе и встроенный механизм управления количеством аргументов функций, значением по умолчанию и т. д. Такой механизм позволил бы мне избавиться от параметров массива и func_get_args() и func_get_num. () вызывает в теле метода).

Подробнее здесь: https://stackoverflow.com/questions/335 ... se-element
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»