Evaluer une condition pour faire des IF dynamiques - PHP - Programmation
Marsh Posté le 29-06-2005 à 15:13:50
eval peut être ?
http://fr2.php.net/manual/fr/function.eval.php
Marsh Posté le 29-06-2005 à 15:29:55
Je pense que ce que tu cherches à faire n'est pas possible en PHP, il faudrait un #define à la C. Et eval ne marchera pas pour ça a priori.
Marsh Posté le 29-06-2005 à 16:55:54
et en mettant un "$test = ma condition" dans une string, faire un eval dessus, puis tester la valeur de $test, ca doit marcher.
PS : un test sur eval("return macondition" ) devrait marcher aussi ene PHP 4+ ...
Marsh Posté le 29-06-2005 à 17:24:16
zapan666 a écrit : eval peut être ? |
bah +1
Pourquoi eval ne serait pas adapté ?
Marsh Posté le 29-06-2005 à 17:52:39
parce que eval ne fait que remplacer tes $var par leur valeur dans le contexte de ta page mais ne te renvoie pas de valeur de test...du moins je pense
Marsh Posté le 29-06-2005 à 18:01:33
Gonzoide a écrit : et en mettant un "$test = ma condition" dans une string, faire un eval dessus, puis tester la valeur de $test, ca doit marcher. |
Ah ben wai en fait.
Code :
|
Reste que si le truc peut être foutu différemment, c'est mieux. Chui pas un grand fan d'eval.
Marsh Posté le 30-06-2005 à 20:20:42
Merci ca marche et j'aurai jure les contraire avant
En tout cas ca m'a permis d'eviter la solution horrible des callbacks
Marsh Posté le 29-06-2005 à 14:59:19
Bonjour,
Je stocke dans une chaine une condition exemple:
Or ce que je veux l'evaluer...
if($ma_condition) me renvoit toujours vrai ce qui est logique vu qu'il teste si la variable est alimenté ou seulement declarée...
Ce que je voudrais c'est qu'il remplace le $ma_condition par la condition $cpt>=1 && statut==10
de maniere a avoir if($cpt>=1 && statut==10)
Ma question est simple: comment evaluer une expression contenu dans une chaine?
Merci