Вызов другой функции с аргументами - PullRequest
0 голосов
/ 29 января 2012

Я застрял здесь, что делать. Я в основном хочу взять все аргументы, введенные в функцию один:

func1('hey', 'hey2', 'hey3');

и затем запустите func2 с теми же аргументами:

func2('hey', 'hey2', 'hey3');

Я пробовал это:

$arguments = func_get_args();
call_user_func_array(array($this, "func2"), $arguments);

но, похоже, он работает неправильно? Есть идеи?

Оказывается, код должен быть: $ arguments = func_get_args (); call_user_func_array (массив ($ this, "func2"), $ arguments [0]);

Woops :) Спасибо всем

Ответы [ 3 ]

1 голос
/ 29 января 2012

Вы можете сделать это просто так:

 $func1 = func1('hey', 'hey2', 'hey3');

 func1($hey, $hey2, $hey3){

  //func1 stuff here

   $func2 =  func2($hey, $hey2, $hey3);

 }

func2($hey, $hey2, $hey3){

    //func2 stuff here

}

Надеюсь, это поможет:)

1 голос
/ 29 января 2012
function fun1(first,second,third) {
    return fun2(first,second,third);
}
0 голосов
/ 29 января 2012

Другой способ - передать аргументы в массив, например:

function func1(array $arguments) {
    list($hey, $hey2, $hey3, $hey4) = $arguments;
    func2($arguments);
}

function func2($arguments) {
    print_r($arguments);
}

$arguments = array('hey', 'hey2', 'hey3');

func2($arguments);
...