PHP - передающие функции возвращаются к другой функции - PullRequest
2 голосов
/ 10 февраля 2012

У меня есть функция PHP, которая возвращает что-то:

function myfunction() {
   $array = array('one', 'two', 'three', 'four');

   foreach($array as $i) {
     echo $i;
   }
}

И еще одну функцию, в которую я хочу передать возвращаемые значения из функции выше:

function myfunction2() {
   //how to send myfunction()'s output here? I mean:
   //echo 'onetwothreefour';
   return 'something additional';
}

Я думаю, это будет выглядетьчто-то вроде myfunction2(myfunction), но я не слишком много знаю PHP и не могу заставить его работать.

Ответы [ 4 ]

5 голосов
/ 10 февраля 2012

Да, вам просто нужно

return myFunction();
0 голосов
/ 10 февраля 2012

Попробуйте это:

function myfunction() {
   $array = array('one', 'two', 'three', 'four');
   $concat = '';
   foreach($array as $i) {
     $concat .= $i;
   }
   return $concat;
}

function myfunction2() {
   return myfunction() . "something else";
}

это вернет onetwothreefoursomthing else

Рабочий пример здесь http://codepad.org/tjfYX1Ak

0 голосов
/ 10 февраля 2012
function myfunction2() {

  $myvariable=myfunction();
  //$myvar now has the output of myfunction()

  //You might want to do something else here

 return 'something additional';
}
0 голосов
/ 10 февраля 2012

myfunction всегда будет возвращать "one".Ничего больше.Пожалуйста, измените поведение return

После этого, если вы все еще хотите получить возвращаемое значение одной функции внутри другой, просто вызовите ее.

function myfunction2() {
    $val = myfunction();
    return "something else";
}
...