Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Erstellen Sie dynamisch ein PHP-Objekt basierend auf einer Zeichenfolge

Kennen Sie jedoch keine Möglichkeit, einen Typ basierend auf einer Zeichenfolge dynamisch zu erstellen. Wie macht man das?

Sie können es ganz einfach und natürlich tun:

$type = 'myclass';

$instance = new $type;

Wenn Ihre Abfrage ein assoziatives Array zurückgibt, können Sie Eigenschaften mit ähnlicher Syntax zuweisen:

// build object
$type = $row['type'];
$instance = new $type;

// remove 'type' so we don't set $instance->type = 'foo' or 'bar'
unset($row['type']);  

// assign properties
foreach ($row as $property => $value) {
   $instance->$property = $value;
}