elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  [Pregunta]: Valor 0 es sinonimo de vacio (empty)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta]: Valor 0 es sinonimo de vacio (empty)  (Leído 7,036 veces)
Leguim


Desconectado Desconectado

Mensajes: 720



Ver Perfil
[Pregunta]: Valor 0 es sinonimo de vacio (empty)
« en: 28 Diciembre 2019, 22:59 pm »

Buenas tardes,

estaba programando y pasa que necesito hacer lo siguiente:

Código
  1. $valor = 0; // variable numérica
  2. if(!empty($valor))
  3. {
  4.     echo "La variable no está vacía.";
  5. }
  6. else
  7. {
  8.     echo "La variable está vacía.";
  9. }
  10.  

Si prueban le va a imprimir que la variable está vacía, algo que es mentira porque tiene un dato, el 0...

Quizás funcione si hago:

Código
  1. $valor = 0;
  2.  
  3. if(!empty($valor) || $valor == 0)
  4. {
  5.    echo "La variable no está vacía.";
  6. }
  7. else
  8. {
  9.    echo "La variable está vacía";
  10. }
  11.  

¿Es recomendable? Porque esto por algo está, no creo que sea casualidad... pasa que este dato va desde el 0 para arriba... más todavía si se guarda en una base de datos... ¿habrá algún problema?... ya veo que mando el 0 y en la tabla aparece vacío, ni siquiera el 0 xD

Gracias.


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: [Pregunta]: Valor 0 es sinonimo de vacio (empty)
« Respuesta #1 en: 28 Diciembre 2019, 23:05 pm »

que tu defines como "vacio"? que es para ti una "variable vacia"? muestrame una variable que hayas declarado que contenga ningún valor


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Leguim


Desconectado Desconectado

Mensajes: 720



Ver Perfil
Re: [Pregunta]: Valor 0 es sinonimo de vacio (empty)
« Respuesta #2 en: 28 Diciembre 2019, 23:07 pm »

para mí es esto:

$var = '';

Ya lo mejore un poco más...
Código
  1. $variable = '';
  2.  
  3. if($variable === 0)
  4. {
  5. echo "no está vacio";
  6. }
  7. else
  8. {
  9. echo "está vacio";
  10. }
  11.  

Más allá de que una $var = ''; no deja de ser una cadena, igualmente no tiene nada y esta vacía para mi..
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: [Pregunta]: Valor 0 es sinonimo de vacio (empty)
« Respuesta #3 en: 28 Diciembre 2019, 23:11 pm »

es php si contiene XD

contiene informacion... es un string de largo 0...

el asunto es la definición misma de vacio...

lee la documentacion (haz click en "empty" en tu codigo arriba para que te mande a la pagina de la documentacion)

En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
@XSStringManolo
Hacker/Programador
Colaborador
***
Desconectado Desconectado

Mensajes: 2.399


Turn off the red ligth


Ver Perfil WWW
Re: [Pregunta]: Valor 0 es sinonimo de vacio (empty)
« Respuesta #4 en: 28 Diciembre 2019, 23:14 pm »

Es algo así:

if (variable === null)
alert ("Variable Vacia");

if (variable === 0)
alert ("Variable contiene valor cero");

if (variable === undefined)
alert ("variable está sin definir");

try
{
if (variable);
}
catch(error)
alert("Variable no se declaró");

Para tipos referenciados necesitas utilizar la keyword instanceof

Esto todo funciona así porque == transforma los tipos de datos al compararlos. === no hace casteo implícito.
Para que la función try catch funcione debes usar el modo estricto.
Pon la siguiente línea del código como primera sentencia dentro de las etiquetas script.
"use strict";

Si quieres una explicación extendida, viene todo explicado y detallado en el libro THE PRINCIPLES OF OBJECT-ORIENTED javascript.  Author Nicholas C. Zakas.  Publicado por No Starch Press.

Para conocimientos imprescindibles sobre el lenguaje es obligado ELOQUENT javascript Third Edition A Modern Introduction To Programming  Author Marjin Haverbeke. Publicado por No Starch Press.

Por los título ya sabes que están en inglés.
« Última modificación: 28 Diciembre 2019, 23:25 pm por @?0!,5^34 » En línea

Mi perfil de patrocinadores de GitHub está activo! Puedes patrocinarme para apoyar mi trabajo de código abierto 💖

Leguim


Desconectado Desconectado

Mensajes: 720



Ver Perfil
Re: [Pregunta]: Valor 0 es sinonimo de vacio (empty)
« Respuesta #5 en: 28 Diciembre 2019, 23:17 pm »

es php si contiene XD

contiene informacion... es un string de largo 0...

el asunto es la definición misma de vacio...

lee la documentacion (haz click en "empty" en tu codigo arriba para que te mande a la pagina de la documentacion)



"Determina si una variable es considerada vacía. Una variable se considera vacía si no existe o si su valor es igual a FALSE. empty() no genera una advertencia si la variable no existe."

Bueno si jaja, tenes razón...
¿En la manera que estoy tratando de que permita el 0 pero como un numero, no como un False... que yo se que son iguales (==) pero no identicos (===) estaría bien con el ultimo código que pase no? xD


EDIT
Citar
Es algo así:

if (variable === null)
alert ("Variable Vacia");

if (variable === 0)
alert ("Variable contiene valor cero");

if (variable === undefined)
alert ("variable está sin definir");

try
{
if (variable);
}
catch(error)
alert("Variable no se declaró");

Justamente eso!
« Última modificación: 28 Diciembre 2019, 23:20 pm por MiguelCanellas » En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: [Pregunta]: Valor 0 es sinonimo de vacio (empty)
« Respuesta #6 en: 28 Diciembre 2019, 23:21 pm »

Citar
Es algo así:

if (variable === null)
alert ("Variable Vacia");

if (variable === 0)
alert ("Variable contiene valor cero");

if (variable === undefined)
alert ("variable está sin definir");

try
{
if (variable);
}
catch(error)
alert("Variable no se declaró");

eso dará error en php

Citar
estaría bien con el ultimo código que pase no? xD

en tal caso el codigo

Código:
if($variable === ''){echo "Variable es string de largo 0"}
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
@XSStringManolo
Hacker/Programador
Colaborador
***
Desconectado Desconectado

Mensajes: 2.399


Turn off the red ligth


Ver Perfil WWW
Re: [Pregunta]: Valor 0 es sinonimo de vacio (empty)
« Respuesta #7 en: 28 Diciembre 2019, 23:28 pm »

Perdón, pensé que era Jquery, solo me fijé en la condición.
En línea

Mi perfil de patrocinadores de GitHub está activo! Puedes patrocinarme para apoyar mi trabajo de código abierto 💖

Leguim


Desconectado Desconectado

Mensajes: 720



Ver Perfil
Re: [Pregunta]: Valor 0 es sinonimo de vacio (empty)
« Respuesta #8 en: 29 Diciembre 2019, 00:03 am »

Aprovechando...

si yo hago 3 >== 2 es un operador de comparación válido? porque no encontré en el manual de php algo sobre esto... o <==
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: [Pregunta]: Valor 0 es sinonimo de vacio (empty)
« Respuesta #9 en: 29 Diciembre 2019, 00:10 am »

eso es un comparador matematico... no tiene dicha version hasta donde tengo conocimiento ya que no se supone que requiera comparar tipo... un principio de programacion de python que creo que se puede extender a cualquier lenguaje es "eres programador, sabes lo que estás haciendo" así que muchos lenguajes no tienen verificaciones del tipo "para evitar que un valor desconocido por mi pase por aquí y sea comparado", es decir, hay acotaciones
« Última modificación: 29 Diciembre 2019, 00:14 am por engel lex » En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Fatal error: Cannot access empty property in...
PHP
Thaorius 2 4,478 Último mensaje 30 Diciembre 2006, 06:09 am
por Thaorius
problema if (!empty()) con paginador
PHP
soru13 5 3,876 Último mensaje 12 Mayo 2011, 04:15 am
por Nakp
Como Obtener valor de un textbox, desde un valor, hasta otro valor [VB6]
Programación Visual Basic
revenge1252 4 6,872 Último mensaje 17 Julio 2012, 09:38 am
por BlackZeroX
[Resuelto] [Pregunta]: ¿Como hacer que un timer me devuelva un valor?
Desarrollo Web
Leguim 2 3,687 Último mensaje 14 Septiembre 2019, 16:52 pm
por Leguim
[Pregunta]: Definir un arreglo vacío (javascript).
Desarrollo Web
Leguim 3 4,254 Último mensaje 4 Enero 2021, 14:38 pm
por MinusFour
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines