Dino Geek, intenta ayudarte

¿Cuál es la diferencia entre "isset" y "vacío" en PHP?


En PHP, las funciones `isset()` y `empty()` desempeñan roles cruciales para la gestión de variables y determinación de su estado, pero trabajan de maneras distintas y se utilizan en contextos diferentes. A continuación, se explica en detalle la diferencia entre estas dos funciones, con ejemplos y fuentes reconocidas.

  1. `isset()`

La función `isset()` se utiliza para verificar si una variable está definida y no es nula. En otras palabras, `isset()` devuelve `true` si la variable existe y no contiene el valor `NULL`.

Sintaxis:
```php
bool isset ( mixed $var [, mixed $… ] )
```

Ejemplo:
```php
$var = “Hola Mundo”;
if (isset($var)) { echo “La variable está definida y no es nula.”;
} else { echo “La variable no está definida o es nula.”;
}
```

En este ejemplo, la salida sería “La variable está definida y no es nula.” porque `$var` está asignada con una cadena de texto y no es `NULL`.

Diferencias de Contexto y Funcionamiento:

- Chequeo de Variables Múltiples: `isset()` puede aceptar múltiples variables y devuelve `true` solo si todas están definidas y no son `NULL`.
```php
if (isset($var1, $var2)) { // Ejecución solo si ambas $var1 y $var2 no son NULL.
}
```
- Performance: `isset()` es una función muy eficiente en términos de rendimiento y se usa comúnmente para verificar la existencia de una variable antes de utilizarla, para evitar errores derivados de la referencia a variables no definidas.

  1. `empty()`

La función `empty()` se utiliza para determinar si una variable está vacía. En PHP, una variable se considera vacía si es:

- `NULL`
- `False`
- Un entero 0 (`0`)
- Un float 0.0 (`0.0`)
- Una cadena vacía (`”“`)
- Una cadena con el valor “0” (`“0”`)
- Un array vacío (array `[]`)
- Un objeto con su método `__empty` invocado y retornando `true`

Sintaxis:
```php
bool empty ( mixed $var )
```

Ejemplo:
```php
$var = “”;
if (empty($var)) { echo “La variable está vacía.”;
} else { echo “La variable no está vacía.”;
}
```

En este ejemplo, la salida sería “La variable está vacía.” porque `$var` es una cadena vacía.

Diferencias de Contexto y Funcionamiento:

- Versatilidad: `empty()` verifica múltiples condiciones que representan un “estado vacío”; es más inclusiva que `isset()`.
- PHP 5.5+: Desde PHP 5.5 en adelante, `empty()` también puede ser utilizado en expresiones variables sin necesitar definirlas primero.
```php
if (empty($myArray[$key])) { // No se arroja un error incluso si $myArray[$key] no está definida.
}
```

  1. Fuentes Reconocidas

Para construir esta respuesta se ha utilizado información de la documentación oficial de PHP, que es una fuente ampliamente reconocida y confiable en la industria.

- `isset` – [Documentación Oficial de PHP](https://www.php.net/manual/es/function.isset.php)
- `empty` – [Documentación Oficial de PHP](https://www.php.net/manual/es/function.empty.php)

Usar correctamente `isset()` y `empty()` en PHP es fundamental para escribir código robusto y evitar errores comunes relacionados con el manejo de variables. Mientras `isset()` es útil principalmente para verificar la existencia de una variable, `empty()` es más versátil para comprobar si una variable no solo está definida, sino que también contiene un “valor vacío”.


Genera artículos simplemente para optimizar tu SEO
Genera artículos simplemente para optimizar tu SEO





DinoGeek ofrece artículos sencillos sobre tecnologías complejas

¿Desea ser citado en este artículo? Es muy sencillo, contáctenos en dino@eiki.fr.

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Nombre de dominio | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Aviso legal / Condiciones generales de uso