JeuWeb - Crée ton jeu par navigateur
[regler]lancer une fonction à partir d'un string - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [regler]lancer une fonction à partir d'un string (/showthread.php?tid=1942)



[regler]lancer une fonction à partir d'un string - jo_link_noir - 30-10-2007

bonjour
alors voilà, j'ai une chaine de caratactere qui contient le nom d'une fonction (ou un code) et je voudrais que le $str devient un code php valide...

j'ai fait ce bout de code pour les tests mais c'est pas comcluant Confused
Code PHP :
<?php 
function a() {
return
true;
}
function
b() {
return
false;
}

$str = 'if(a() OR b())';
var_dump($str);

if(eval(
"\$str = \"$str\";" )) {
echo
"oui";
} else {
echo
"non";
}

le resuslat et "non" alors que ça devrais être oui...
merci de me venir en aide ^^

PS : var_dump renvoi string(14)


RE: lancer une fonction à partir d'un string - nemesis_elite - 30-10-2007

Salut,

Code PHP :
<?php 

function a() {
return
true;
}
function
b() {
return
false;
}

$str = 'b() OR a()';

eval(
"\$str = ($str)? 'oui': 'non';" );
echo
$str;
?>

Ce code devrait marcher.
Pour ce qui est de ton code, je ne sais pas trop pourquoi cela ne marche pas :/ Désolé

NemeSiS_eliTe


RE: lancer une fonction à partir d'un string - jo_link_noir - 31-10-2007

oki merci ça marche
c'est pas grave si je peux pas faire un if "normal", dans ce qu'à la ça convient parfaitement à e que je fait