Mysql
 sql >> Database >  >> RDS >> Mysql

Memorizzare il nome della funzione nel database e quindi eseguirlo

È possibile utilizzare funzioni variabili (http://php.net/manual/en /funzioni.funzioni-variabili.php ).

$r = mysql_query("SELECT method FROM method_table WHERE id = 2");
$row = mysql_fetch_assoc($r);
$func = $row['method'];
$func($parameter); //will execute whatever method you stored in the `method` field

In questo modo puoi eseguire una funzione il cui nome è memorizzato in un database. Se vuoi eseguirlo nel contesto di un oggetto (da qui il method ), puoi fare:$this->$func($parametro);