PHP-Klasse nach Bedingung erzeugen

cubeless

Mitglied
Hallo,

ich stehe im Moment auf dem Schlauch. Ich möchte, abhängig von $name, verschiedene Objekte erzeugen. Das habe ich auch realisiert (siehe Code), allerdings hätte ich das nun generisch, um nicht für jeden neu dazu kommenden Fahrzeugtyp das switch-Statement zu erweitern. Geht das überhaupt?

Danke für Eure Antworten!

PHP:
switch($name)
{
    case 'car':
        $obj= new Car($id);
        $plugin->get_by_id($p->id);
        break;
    case 'bicycle':
        $obj= new Bicycle($id);
        break;					
}
 
Ok, aber das Beispiel bringt mich nicht weiter, ich würde mir gerne das Switch-Konstrukt sparen und automatisch aus $name das Objekt erzeugen. Das geht aber vermutlich nicht :D
 
Manchmal ist die Lösung leichter als man denkt. Früher gab es mal die Funktion call_user_method(), aber diese wird seit PHP Version 4.1.0 als veraltet eingestuft und sollte nicht mehr verwendet werden.
 
Zuletzt bearbeitet:
Zurück