Blog sobre desarrollo WordPress en Español Desarrollo WordPress en Español
WordPress Code Snippets

PHP tip, comprueba si una variable existe y tiene un valor concreto

Hoy me animo a escribir de nuevo un artículo en el blog después de mucho tiempo. En esta ocasión es simplemente un truquillo o consejo para cuando estés desarrollando un plugin o theme, por ejemplo.

Si alguna vez has desarrollado sobre PHP, es muy probable que te hayas encontrado con muchos Notices porque una variable no existe. Es entonces cuando tiramos de un if (isset($var))… y dentro de ese if, ya hacemos lo que queramos con ella.

Y muchas de esas veces, comprobamos con otro if si la variable tiene algún valor concreto para realizar una acción. Es decir, algo tipo:

Tenemos dos ifs anidados para realizar nuestra acción. En el segundo de ellos utilizamos una yoda condition, donde la constante (en este caso true) va en el lado derecho de la comparación. Si tienes curiosidad te dejo más información aquí.

Pero eso de tener dos ifs anidados… a mucha gente le produce urticaria. ¿podemos hacerlo en una línea? La respuesta es sí, y quedaría algo más elegante:

Simplemente utilizamos un operador ternario, donde preguntamos si nuestra variable existe. En caso afirmativo devolvemos el valor de la variable y en caso negativo devolvemos null. Y esta respuesta de nuestra ternaria la igualamos a true. Si se cumple, entramos dentro del if.

Aún podemos darle una vuelta de tuerca más. Si trabajas sobre versiones PHP 7.0 o superiores, podemos utilizar el operador de fusión de null (??). Devuelve su primer operando si existe y no es null, de lo contrario devuelve su segundo operando:

De este modo evitamos una doble anidación y queda nuestro código más limpio. Además evitamos esos desagradables Notices que aparecen si no haces estas comprobaciones antes de utilizar variables.

Puede que también te interese

Hacer una migración de dominio en WordPress sin perder posicionamiento
Hacer una migración de dominio en WordPress sin perder posicionamiento
En el artículo anterior vimos cómo migrar WordPress de hosting y de dominio. Puede darse el caso de que tu dominioantiguo.com estuviera bien posicionado y…
Forzar el uso de contraseñas seguras en WordPress
Forzar el uso de contraseñas seguras en WordPress
Cuando se habla de seguridad en WordPress (o en internet en general) se suele comentar que uno de los mayores bugs de seguridad se encuentra…
Creando un tema desde cero para WordPress parte 1: Consideraciones previas
Creando un tema desde cero para WordPress parte 1: Consideraciones previas
1. Creando un tema desde cero para WordPress: Consideraciones previas 2. Creando un tema desde cero para WordPress: Escribiendo el tema 3. Creando un tema…
Cómo eliminar campos personalizados o custom fields que ya no utilizas
Cómo eliminar campos personalizados o custom fields que ya no utilizas
Es algo muy habitual el uso de campos personalizados o custom fields para hacer desarrollos a medida sobre WordPress. También es muy habitual con el…