Mi piacerebbe creare dinamicamente un oggetto PHP, ei parametri sarebbero facoltativi.Parametri di passaggio PHP durante la creazione di un nuovo oggetto, call_user_func_array per gli oggetti
Ad esempio, invece di fare questo:
$test = new Obj($param);
mi piacerebbe fare qualcosa di simile (creare un nuovo ob è di fantasia):
$test = create_new_obj('Obj', $param);
Esiste tale funzione in php? Qualcosa di simile a call_user_func_array, ma per oggetto invece.
per chiarire un po 'di più, il nome della classe è variabile (cambia), e $ param dipende dalla classe che viene caricata. A volte non ci sono parametri. È fondamentalmente il caricamento dinamico da una varietà di classi a seconda della situazione. – Patrick
Penso che la mia risposta di seguito rispecchi ancora il conto di ciò che stai descrivendo (nomi di classi variabili, parametri di costruzione facoltativi). Non c'è motivo per cui non si possa passare un '$ param' nullo a un costruttore per una classe che non ne ha bisogno. Se, d'altra parte, stai dicendo che il tipo di oggetto che viene creato è in realtà * dipendente da '$ param' *, allora ti consigliamo di esaminare qualcosa come il Pattern di fabbrica: http: //en.wikipedia .org/wiki/Factory_method_pattern. PHP non può gestire le tue decisioni di costruzione per te in quel caso ... dovrai scrivere una logica per decidere cosa viene costruito. – zombat