Eu já passei por uma situação parecida, meu cenário era o seguinte: eu deveria gerar XML para diversos buscadores (Buscapé, Shopping UOL, GoogleShopping, etc…), ai eu criei métodos (dentro da aplicação) que trabalhassem com cada um deles: XMLBuscape(), XMLUol(), XMLGoogle().
Logo depois criei um outro método que cria o XML para cada buscador: gerarXML(). Esse método tem que buscar o nome do buscador no banco e depois montar o nome do método usando o nome do buscador.
[i]$sql = "SELECT nm_buscador FROM tb_buscador = ‘Buscape’;
sc_lookup(“buscador”, $sql);
$metodo = “XML” . {buscador[0][0]};[/i]
Até aqui foi tudo certo, mas tem um ponto a ser observado, quando seus métodos vêm da aplicação ou de um biblioteca, o Scriptcase incorpora isso dentro da aplicação que é uma classe PHP, aí resolvi dessa maneira.
$resultado = call_user_func(array(CLASS, $metodo), $parametro);
A função call_user_func do PHP executa métodos do usuário, como os métodos estão incorporador dentro da aplicação, eu usei a constante CLASS que retorna o nome da classe que possui o método a ser executado, o último valor é um parâmetro que o método precisa para ser executado, bom aí foi só trabalhar com resultado obtido.