Bonsoir,
j'ai un problème avec eval().
Par exemple :
Code PHP :
<?php
$calc = 15*6;
$expr = "\$var = " . $calc . ";";
eval($expr);
echo $var;
c'est bon, y'a pas de soucies.
En revanche :
Code PHP :
<?php
$calc = (15*6) - 6));
$expr = "\$var = " . $calc . ";";
eval($expr);
echo $var;
Par exemple si $calc contien un problème de parenthèses, genre 1 parenthèse en trop, ça retourne une erreur :
Parse error: syntax error, unexpected '(' in /mnt/145/sdb/a/8//calcul.php(14) : eval()'d code on line 1
Ce que je voudrais, c'est savoir si la variable contien un problème de parenthèse, et si oui j'affiche une erreur au lieu de me prendre une erreur php dans la tronche ^^
Quelqu'un vois comment faire ?
j'ai essayé ainsi :
Code PHP :
<?php
$expr = "\$var = " . $calc . ";";
if (@eval($expr)) {
echo $var;
}
else {
echo 'erreur';
}
Mais qu'il y est un problème de parenthèse ou non, ça m'affiche toujours 'erreur'.