Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Duda con sentencia empty

Estas en el tema de Duda con sentencia empty en el foro de PHP en Foros del Web. Hola a todos Si tengo este código $var = -1; if(empty($var) Me devuelve true o false Supongo que false, pero mirando php.net dice que sólo ...
  #1 (permalink)  
Antiguo 19/12/2013, 05:02
 
Fecha de Ingreso: agosto-2004
Mensajes: 312
Antigüedad: 15 años, 1 mes
Puntos: 0
Duda con sentencia empty

Hola a todos
Si tengo este código
$var = -1;
if(empty($var)

Me devuelve true o false
Supongo que false, pero mirando php.net dice que sólo retorna falso si no está declarado o si tiene un valor de 0

Gracias por adelantado
  #2 (permalink)  
Antiguo 19/12/2013, 05:20
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 10 años, 3 meses
Puntos: 1516
Respuesta: Duda con sentencia empty

No te devuelve false, lo que te dijo php.net es correcto :borracho. La misma función lo dice, el valor que tiene está variable es vacio (dentro de las otras condiciones que menciona php.net) Si no está vacio entonces es false si está vacio entonces true.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 19/12/2013, 14:24
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 11 años, 3 meses
Puntos: 127
Respuesta: Duda con sentencia empty

empty sirve solo para ver si la variable esta vacia.
el que una variable este declarada o no es diferente a que si tiene o no datos.

esto es lo que dice el manual
  #4 (permalink)  
Antiguo 19/12/2013, 16:13
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 11 años, 6 meses
Puntos: 96
Respuesta: Duda con sentencia empty

Que pasa si hago esto?
Código PHP:
Ver original
  1. $foo=0;
  2. echo (empty($foo)) ? "Vacia" : "No vacia";
  3. echo (empty($bar)) ? "No declarada" : "Declarada";
empty no sirve para saber.si una variable esta devlarada? Si leiste el manual deberias haber visto que empty == (!isset($foo) || $foo==false)
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #5 (permalink)  
Antiguo 19/12/2013, 23:38
 
Fecha de Ingreso: agosto-2004
Mensajes: 312
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Duda con sentencia empty

Gracias a todos por las respuestas
La duda la tenía por un código de Prestashop que me está volviendo loco, que retorno productos desde un pedido y me quita los gastos de envío.
Revisando las clases implicadas he visto que me devolvía un valor -1 y realizaba una comprobación con empty.
Pensaba que ahí estaba mi problema, pero no :(

Gracias de nuevo por las respuestas. Sigo peleandome con Prestashop

Por mi parte lo doy por solucionado

Saludos a todos

Etiquetas: empty, sentencia
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:26.