Tema: sintaxis
Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/07/2010, 09:10
Avatar de abimaelrc
abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: sintaxis

Depende de lo que haya en la variable, pero de por sí PHP retorna como cierto cuando una variable existe y tiene algún valor. Por mi parte no me gusta usar esa forma porque para eso crearon empty o isset y además no es una buena forma de programar. Si el valor de la variable tiene por ejemplo un espacio en blanco te retornará como cierto y con empty ya solucionas el problema. Ejemplos
Código PHP:
Ver original
  1. <?php
  2. $foo = '';
  3. if($foo){
  4.     echo 'foo';
  5. }// No imprime en pantalla foo
  6.  
  7. $foo = ' ';
  8. if($foo){
  9.     echo 'foo';
  10. }// Imprime en pantalla foo
  11.  
  12. $foo = ' ';
  13. if(empty($foo)){
  14.     echo 'foo';
  15. }// No imprime en pantalla foo
Otro detalle de porque no uso esa forma, es que si tienes indicado el error_reporting como E_ALL solamente, te dará una notificación como que anteriormente no haz declarado la variable, si es que no la mencionas anteriormente. Ejemplos
Código PHP:
Ver original
  1. <?php
  2. if($foo){
  3.     echo 'foo';
  4. }// Notice: Undefined variable: foo in {ruta hacia el archivo} on line 2
  5.  
  6. if(empty($foo)){
  7.     echo 'foo';
  8. }// No imprime foo en pantalla ni tampoco la notificación
  9.  
  10. // También lo puedes verificar con isset
  11. if(isset($foo)){
  12.     echo 'foo';
  13. }// No imprime foo en pantalla ni tampoco la notificación
Siempre es bueno usar este tipo de funciones para evitarte problemas en el futuro.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos