comment remplacer @eval() avec php 7 ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : comment remplacer @eval() avec php 7 ?

Re: comment remplacer @eval() avec php 7 ?

par @rthur » 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.

comment remplacer @eval() avec php 7 ?

par lesjno » 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.