sql >> Base de Datos >  >> RDS >> Mysql

Crear dinámicamente un objeto PHP basado en una cadena

Pero no conozco ninguna forma de crear dinámicamente un tipo basado en una cadena. ¿Cómo se hace esto?

Puedes hacerlo con bastante facilidad y naturalidad:

$type = 'myclass';

$instance = new $type;

Si su consulta devuelve una matriz asociativa, puede asignar propiedades usando una sintaxis similar:

// 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;
}