Создание функций с переменным числом аргументов
Скорее всего, вы уже знаете, что PHP позволяет нам создавать функции с необязательными аргументами. Сейчас я покажу функцию, в которой число аргументов может меняться от случая к случаю.
Но для начала, вспомним как мы создаём функции обычным образом:
// функция с двумя необязательными параметрами
function foo($arg1 = '', $arg2 = '') {
echo "arg1: $arg1\n";
echo "arg2: $arg2\n";
}
foo('hello','world');
/* выведет:
arg1: hello
arg2: world
*/
foo();
/* выведет:
arg1:
arg2:
*/
Теперь посмотрим на то, как можно написать функцию с неограниченным количеством аргументов. Для этого будет использовать метод func_get_args():
// не указываем аргументы
function foo() {
// возвращает массив, переданных аргументов
$args = func_get_args();
foreach ($args as $k => $v) {
echo "arg".($k+1).": $v\n";
}
}
foo();
/* ничего не выведет */
foo('hello');
/* выведет
arg1: hello
*/
foo('hello', 'world', 'again');
/* выведет
arg1: hello
arg2: world
arg3: again
*/
Комментарии:
Нету комментариев для вывода...