Foros del Web » Programando para Internet » PHP »

Como calcular un string, como si fuera una operación matemática

Estas en el tema de Como calcular un string, como si fuera una operación matemática en el foro de PHP en Foros del Web. HOla comunidad que tal? tengo una ligera emergencia. Me sucede lo siguiente. Tengo por ejemplo este string $var="1+2+3"; Aclaratoria=(la operación dentro del string puede ser ...
  #1 (permalink)  
Antiguo 02/07/2009, 10:31
 
Fecha de Ingreso: mayo-2009
Mensajes: 10
Antigüedad: 14 años, 11 meses
Puntos: 0
Como calcular un string, como si fuera una operación matemática

HOla comunidad que tal? tengo una ligera emergencia.
Me sucede lo siguiente.
Tengo por ejemplo este string

$var="1+2+3";

Aclaratoria=(la operación dentro del string puede ser mucho más compleja, pueden tener más operadores como paréntesis, ^)
como hago para que php lo identifique como una operación matemática, la calcule y así la pueda guardar en una variable.
Creo q no se puede hacer directo y he probado eval y ereg y nada. no me sirva.

SI pudieran ayudarme se los agradecería.

Muchas gracias

David
  #2 (permalink)  
Antiguo 02/07/2009, 10:37
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Como calcular un string, como si fuera una operación matemática

Con eval() si construyes la instrucción adecuadamente debería funcionar, por ejemplo:
Código php:
Ver original
  1. $cadena = '$var = 1 + (2 * 6);';
  2. eval($cadena);
  3. echo($var);
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 02/07/2009, 12:23
 
Fecha de Ingreso: mayo-2009
Mensajes: 10
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Como calcular un string, como si fuera una operación matemática

excelente! muchas gracias.... si me funcionó perfecto.
Lo q tengo es una duda,
que me recomiendas tú, que lo busque hacer por expresiones regulares y eso, descompoga los valores y los operandos y los apile y luego los ejecute.

O de esta forma me dices q es segura y confiable?

si por lo menos los numeros fueran decimales y tuvieran exponentes funcionaría bien?

gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:14.