[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Передача одного параметра разным методам
Zarik
Здравствуйте! Есть задача передать один и тот же параметр последовательно нескольким методам. Переменная $Param содержит 2 массива. После того как метод принял параметр, он возвращает переменную тоже с двумя массивами. Ключи и названия массивов сохраняются меняется только их содержимое.
Так все работает:
$Param = $obj1->method1($Param);
$b = $obj2->method1($a);
$c = $obj3->method1($b);
$d = $obj4->method2($c);
$e = $obj5->method2($d);
$f = $obj6->method2($e);
$g = $obj7->method3($f);

Вопрос: Как это все сделать динамически то есть как изначально количество методов не известно и будет меняться.
AlmazDelDiablo
$a = $obj2->method1($a);
$a = $obj1->method2($a);
$a = $obj5->method3($a);
$a = $obj78->method4($a);
$a = $obj666->method5($a);
$a = $obj667->method6($a);
$a = $obj786->method7($a);
$a = $obj3453->method8($a);

Или же можно вообще работать со ссылками на $a, ибо прогонять большие массивы через большое количество методов/функций не по ссылкам — фигово.

_____________
Блог | VK | GitHub | Twitch
Zarik
Данная запись все равно является статичной.
Нужно, что то вроде

foreach ($array as $item){
$b[] = $obj2->method1($item)
}

только здесь заносится в один метод разные параметры.
А нужно наоборот чтобы в разные методы подставляло одну и ту же переменную, содержание которой после прохождения каждого метода меняется. Интересует конечный результат, промежуточные значения можно не сохранять.
Предполагается что нужные методы будут храниться в массиве. Или так делать нельзя?
T1grOK
Так что ли?
$methods = array(
'method1',
'method2',
'method3',
'method4',
'method5',
);


foreach($methods as $method){
$param = $obj->$method($param);
}


_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
Zarik
Нет. Но проблему уже решил
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.