Wie kann ich einen Objektkonstruktor aufrufen, der ein Array von Parametern so übergibt, dass er folgendes hat:
%Vor%Ich kann
anrufen %Vor% unter Berücksichtigung, dass ich nicht weiß, wie viele Parameter im Array gesetzt werden können.
Gibt es etwas wie call_object('Abc', array($param1, $param2))
?
Das Ideale besteht darin, Ihren Konstruktor so zu definieren, dass er ein Array aufnimmt.
Wenn Sie das nicht können, gibt es eine mögliche Problemumgehung. Wenn all -Parameter für den Konstruktor optional sind, könnten Sie etwas mit call_user_func_array
:
Dies führt dazu, dass Ihr Konstruktor zweimal ausgeführt wird: einmal ohne Parameter und einmal mit denen im Array. Sie müssen entscheiden, ob dies für Ihre Anwendung geeignet ist.
Angenommen, Sie können die Konstruktoren Ihrer Objekte ändern, ist ein Muster wie dieses nicht ungewöhnlich, erfordert jedoch assoziative Arrays als Eingabe:
%Vor%