el primer paso es evaluar la expresión... en este caso
is_numeric() no funcionaría del todo...
lo ideal sería un
expresión regular Código PHP:
$nro = '2+1';
if (preg_match('/^[0-9\+\-\*\/\s\(\)]+$/', $nro))
{
eval("\$out = $nro;");
echo "el resultado de '$nro' es $out";
}
else echo "'$nro' no se puede evaluar";
la idea está en validar los números y operadores matemáticos, al ser una expresión correcta simplemente se evalúa... ;)