Transformation d'une équation

Résolu
sunandgirl Messages postés 7 Date d'inscription lundi 4 avril 2016 Statut Membre Dernière intervention 2 août 2016 - 20 juil. 2016 à 19:52
sunandgirl Messages postés 7 Date d'inscription lundi 4 avril 2016 Statut Membre Dernière intervention 2 août 2016 - 21 juil. 2016 à 15:45
Bonjour à tous,
J'ai une chaîne de caractère dans une variable:
$chaine = 'DonneeA * (DonneeB + DonneeC)'
où:
$DonneeA = 10;
$DonneeB = 8;
$DonneeC = 13;
J'aimerais obtenir une valeur sous forme d'un entier soit:
$resultat = 210;
Je n'ai pas encore fait beaucoup de test et de recherche mais je vous demande tout de suite de l'aide car je n'ai pas beaucoup de temps.
Merci!

2 réponses

Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
21 juil. 2016 à 07:00
Bonjour

je ne fais pas de PHP, mais en tapant
"parser equation php" dans mon moteur de recherche préféré, je trouve plein de questions résolues sur le sujet.
0
sunandgirl Messages postés 7 Date d'inscription lundi 4 avril 2016 Statut Membre Dernière intervention 2 août 2016
21 juil. 2016 à 15:45
J'ai trouvé des solutions et je le post ici pour ceux que ça peux etre utile.

Solution 1: Pour une plateform de préférence qui n'est pas public car il n'est pas super sécuritaire mais il fonction très bien.


$DonneeA = 10;
$DonneeB = 8;
$DonneeC = 13;
$str = '$DonneeA*(($DonneeB+$DonneeC)*$DonneeA)+($DonneeC*$DonneeB)';
eval( "\$str = \"$str\";" );
echo '1:' . $str . '<br />';
echo '2:' . eval ( '$monResultat=' . $str . ';' ) . '<br />';
echo '3:' . $monResultat;


Solution 2:
https://gist.github.com/ircmaxell/1232629
0
Rejoignez-nous