たとえば、クラスMyClassがあります。
Class MyClass {
public function method_1() {
return $this;
}
public function method_2() {
return $this;
}
public function method_n() {
return $this;
}
}
そして、関数とその引数の配列があります:
$array = array(
'method_1' => array(
'0' => 'first_argument',
'1' => 'second_argument',
'2' => 'nth_argument',
),
'method_2' => array(
'0' => 'first_argument',
'1' => 'second_argument',
'2' => 'nth_argument',
),
);
MyClass
チェーン内の配列からメソッドを呼び出す方法は?
$result = $my_class->$array['method_1']($array['method_1'][0], $array['method_1'][0])
->$array['method_1']($array['method_2'][0], $array['method_2'][0])
->$array['method_n']($array['method_n'][0], $array['method_n'][0]);
例えば:
foreach($array as $function => $args) {
// build chain here and execute after foreach
}
したがって、主な問題は、チェーン内の引数を使用して、無制限で未知の数のクラス関数を呼び出す方法です。ありがとう!