Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Armazene o nome da função no banco de dados e execute-o


Você pode usar funções variáveis ​​(http://php.net/manual/en /functions.variable-functions.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

Desta forma você pode executar uma função cujo nome está armazenado em um banco de dados. Se você quiser executá-lo dentro do contexto de um objeto (daí o method ), você pode fazer:$this->$func($parameter);