comment remplacer @eval() avec php 7 ?

Petit nouveau ! | 1 Messages

28 juin 2016, 16:59

Bonjour,

Pour un besoin bien particulier J’utilisais jusqu’à présent (php 5.6) la syntaxe @eval($chaine) pour exécuter du code dynamique. Si la valeur renvoyée était « FALSE » alors je considérais qu’il s’agissait d’une chaine de caractère à afficher :
If (@eval($chaine) ===false) echo $chaine ;
Cela ne fonctionne plus avec php 7 : lorsqu'il s'agit (volontairement) d'une chaine à afficher PHP s’arrête et affiche une erreur de « syntaxe ».
Comment pourrais-je procéder pour faire la même chose avec php 7 ?

Merci d’avance.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

28 juin 2016, 20:44

J’utilisais la syntaxe @eval($chaine) pour exécuter du code dynamique. Si la valeur renvoyée était « FALSE » alors je considérais qu’il s’agissait d’une chaine de caractère à afficher
Image


Ton besoin à intérêt à être sacrément particulier pour avoir réalisé cette horreur :shock:
Il faudrait à mon avis revoir ton architecture pour savoir comment tu en es arrivé là car il doit y avoir une autre manière de faire + propre et + sécurisée.
Quand tout le reste a échoué, lisez le mode d'emploi...