Buenas tardes.
Necesito que la condición de mis if sea variable, ejemplo:
$valor1 = 1;
$valor2 = 2;
$condicion = '>=';
if($valor1 $condicion $valor2){
}
Eso así no funciona, ¿hay alguna forma de hacer eso?
Gracias
| |||
Operador de comparación desde variable Buenas tardes. Necesito que la condición de mis if sea variable, ejemplo: $valor1 = 1; $valor2 = 2; $condicion = '>='; if($valor1 $condicion $valor2){ } Eso así no funciona, ¿hay alguna forma de hacer eso? Gracias |
| ||||
Respuesta: Operador de comparación desde variable También creo como hhs que tendrías que decir para que quieres eso, de lo contrario yo te propongo esta opción, ya que dependiendo de la condición querrás que haga una cosa u otra, y de tu forma solo veo un condicional if por lo que hará lo mismo independientemente de la condición
Código PHP:
Ver original
__________________ No te olvides de dar +1 a quien te echa un cable ;) |
| |||
Respuesta: Operador de comparación desde variable La opción del switch es la que se me había ocurrido , pero estaba buscando la forma de hacerlo en menos lineas, voy a explicar para q lo necesito Tengo una tabla llamada indicadores que tiene los campos nombre, valorReal, condicion y valorObjetivo LO que hace el usuario al dar de alta un indicador es: - insertar el nombre - inserta el valor real - inserta el valor objetivo - inserta la condición para saber como se debe comparar Si se cumple la condición se marca en verde y si no en rojo. No se si me he explicado bien. |
| ||||
Respuesta: Operador de comparación desde variable No se si he llegado a entenderlo bien, lo que entiendo es que el usuario introduce los datos y la condición, y si la condición es correcta la marca verde y si no en rojo. Creo que con un switch va que sobra, tal vez haya una solución más corta, pero no por eso un switch es más o menos correcto, de hecho, tal vez sea incluso más correcto el switch en este caso, ya que tu mismo identificaste como hacerlo con el, y has perdido más tiempo en busca otra solución alternativa, por lo que en términos productivos has salido perdiendo buscando otra solución. Por cierto ten en cuenta que dependiendo que condicional ponga puede aparecer que varios condicionales pueden ser correctos ( también depende de la libertad que le des al usuario ). como en el caso de 1 < 2 o 1 != 2.
Código PHP:
Ver original
__________________ No te olvides de dar +1 a quien te echa un cable ;) Última edición por rodrypaladin; 15/06/2016 a las 14:19 |
| ||||
Respuesta: Operador de comparación desde variable Según la documentación oficial: Precaución El constructor de lenguaje eval() es muy peligroso porque permite la ejecución de código de PHP arbitrario. Su uso está totalmente desaconsejado. Si se ha verificado cuidadosamente que no existe otra opción que usar este constructor, se ha de poner especial atención en no pasar ninguna información proporcionada por el usuario a esta función sin haberla validado apropiadamente con anterioridad.
__________________ No te olvides de dar +1 a quien te echa un cable ;) |
Etiquetas: |