Autor
|
Tema: [Pregunta]: Valor 0 es sinonimo de vacio (empty) (Leído 7,036 veces)
|
Leguim
Desconectado
Mensajes: 720
|
Buenas tardes, estaba programando y pasa que necesito hacer lo siguiente: $valor = 0; // variable numérica { echo "La variable no está vacía."; } else { echo "La variable está vacía."; }
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: $valor = 0; if(!empty($valor) || $valor == 0) { echo "La variable no está vacía."; } else { echo "La variable está vacía"; }
¿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
|
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
Mensajes: 720
|
para mí es esto: $var = ''; Ya lo mejore un poco más... $variable = ''; if($variable === 0) { echo "no está vacio"; } else { echo "está vacio"; }
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
|
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
Mensajes: 2.399
Turn off the red ligth
|
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
Mensajes: 720
|
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 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
|
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 estaría bien con el ultimo código que pase no? xD en tal caso el codigo 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
Mensajes: 2.399
Turn off the red ligth
|
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
Mensajes: 720
|
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
|
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.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Fatal error: Cannot access empty property in...
PHP
|
Thaorius
|
2
|
4,478
|
30 Diciembre 2006, 06:09 am
por Thaorius
|
|
|
problema if (!empty()) con paginador
PHP
|
soru13
|
5
|
3,876
|
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
|
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
|
14 Septiembre 2019, 16:52 pm
por Leguim
|
|
|
[Pregunta]: Definir un arreglo vacío (javascript).
Desarrollo Web
|
Leguim
|
3
|
4,254
|
4 Enero 2021, 14:38 pm
por MinusFour
|
|