Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: blaknez root en 27 Julio 2014, 19:02 pm



Título: Cómo puedo convertir un String a Int en PHP
Publicado por: blaknez root en 27 Julio 2014, 19:02 pm
Saludos. Cómo puedo convertir una cadena de texto
Código
  1. $cadena = "5+5+3";
  2.  
De tal manera que el resultado sea 13? algo muy similar a la función Eval de javascript pero necesito hacerlo en PHP
Código
  1. $cadena = 13
De antemano gracias.
 :)


Título: Re: Cómo puedo convertir un String a Int en PHP
Publicado por: maxim_o en 27 Julio 2014, 19:25 pm
prueba con la funcion settype() a ver si funciona. Esta convierte el tipo de la variable al que le hayas indicado. Al convertir un string a un entero, comprueba si el string contiene algun numero, sino existe le pone el valor 0.
Lo que no se, es si realizara la operacion suma.. A lo mejor tambien te puede valer intval().


Ejemplo settype():
 settype($cadena,"integer")

ejemplo intval():
 $variable=intval($cadena)


Título: Re: Cómo puedo convertir un String a Int en PHP
Publicado por: MinusFour en 27 Julio 2014, 19:26 pm
Hay un eval también para PHP:

Código
  1. <?php
  2. eval("\$val = 2+3+4;");
  3. echo $val;
  4. ?>

Edit: No recomiendo en lo absoluto que manejes user input en eval. Es un riesgo muy grande.

Si quieres resolver operaciones matemáticas de un usuario sería mejor parsear el string de manera que obtengas los operandos y operadores o usar esto:

http://www.phpclasses.org/package/2055-PHP-Solve-equations-with-multiple-variables.html