If corto o abreviado en PHP

Hoy vamos con un tip rápido y sencillo a la vez que efectivo «cómo hacer un if corto o abreviado».

Desde que tengo uso de razón en la programación, me han enseñado a optimizar y minificar al máximo el código, eso si, siempre con código tabulado, no por mucho acortar hay que dejar de tabular 😉

Así que os voy a explicar cómo hacer un if abreviado, o como se le llama en matemáticas Operador ternario para que lo uséis en vuestro código y quede más acortado, pero igual de legible.

A continuación tenemos un if estándar donde miramos si $totalMales es mayor que $totalFemales, y en el caso de que se cumpla una condición u otra a $totalHigher le asignamos el valor de $totalMales en el caso de que se cumpla la condición, y en el caso de que no se cumpla, le asignamos el valor de $totalFemales:

Como veis es una sentencia muy simple, un if donde miramos si hay más hombres que mujeres, y la cantidad más alta se la asignamos a la variable $totalHigher.

Pero como veis dicha condición tan simple, nos está ocupando 5 líneas de código, es demasiado para un simple if.

Así que lo que vamos a hacer ahora con el if, es acortarlo de la siguiente manera:

La condición del if la metemos dentro del paréntesis, y si la condición dentro del paréntesis se cumple, devolverá lo que viene precedido por el interrogante, en este caso: $totalMales.

Y en el caso de que la condición no se llegara a a cumplir, nos devolvería lo que hemos puesto después de los dos puntos (:), en este caso: $totalFemales.

Como podéis comprobar es mucho más corto y pasamos de tener 5 líneas a tan solo 1.

No necesitamos más y queda igual de legible para cualquiera que coja luego el código.

Espero os haya servido de ayuda 🙂

Y espero que apliquéis siempre que podáis el uso de buenas técnicas en la programación.

Recordad siempre de comentar! Ya sea el código o en el blog 😉

4 comentarios

    Jhon

    Muy bien explicado! muchas gracias

      Oyagum

      Gracias a ti 😉

    Marrcos

    Buenos dias,
    En el caso de un condicional más largo, como este por ejemplo:
    if (isset($num1) && isset($num2) && isset($num3) && isset($num4) && is_numeric($num1)
    && is_numeric($num2) && is_numeric($num3) && is_numeric($num4)
    && $num2 >=0 && $num2 =0 && $num3 =0 && $num4 <=9){

    se podría usar este operador?

    Gracias y enhorabuena por el blog.

      Oyagum

      Realmente si que podrías usarlo, lo único que se vería largo, pero si, podrías llegar a usarlo sin problema. El número de condicionales no afectaría.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*
*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.