2010-09-21 7 views
2

Je suis à la recherche d'une alternative à ce code:Alternative à eval()

expl = eval "BeEF::Modules::Exploits::#{klass.capitalize}.new" 

Ici, le eval est totalement sécurisé. Y a-t-il une alternative que je pourrais utiliser pour générer dynamiquement des classes sans utiliser eval? Comme dans, klass est toujours différent. Donc mon code reste générique.

Merci pour votre temps.

Répondre

7

Vous pouvez utiliser le module # const_get:

expl = BeEF::Modules::Exploits.const_get(klass.capitalize).new