[PHP-Tip] empty(een variabele met waarde 0) = true

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • red_indian
  • Registratie: Maart 2000
  • Laatst online: 25-03 12:21

red_indian

 Smokin' Suckz B!

Topicstarter
ik weet niet of er hier ook tips uitgewisseld mogen worden,
maar ik heb bijna een uur lopen klooien voordat ik hier achter kwam. lijkt me daarom misschien zinvol om dit te melden:
code:
1
2
3
4
5
6
7
8
<?php
  $henk = "";
  if(empty($henk)) echo "empty!<br>";
  $henk = 0;
  if(empty($henk)) echo "ook empty!<br>";
  $henk = 1;
  if(empty($henk)) echo "nog steeds empty!<br>";
?>

dit geeft dus:
eerste keer: 'empty!'
tweede keer: 'ook empty!'

een beter oplossing is dus:
'is_int($henk)' of 'isset($henk)'

of zijn we alleen voor problemen hier en niet om tips uit wisselen? kon zo snel geen rules vinden. zie wel of hij op slot gaat.

als je op php.net kijkt:
"empty -- Determine whether a variable is set"

een variabele met waarde 0 lijkt mij toch set?
ok, er staat wel nadere uitleg, maar je verwacht het niet.

hoe dan ook, ik vond het de moeite van het vermelden waard.

Need a cuesheet/tracklisting? (meer dan 500.000 online)


Acties:
  • 0 Henk 'm!

  • HenkS
  • Registratie: Mei 2000
  • Laatst online: 21-09 19:17

HenkS

Da_king alias HenkS

ik ben wel set, want anders kon ik geen post doen :P

Acties:
  • 0 Henk 'm!

  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01 11:31
tja, de meeste mensen kennen isset() eerder dan empty, dus daar hebben ze dan geen problemen mee :)

verder heeft empty() meer problemen bijv:
PHP:
1
2
3
4
<?
if ( empty( trim($var) ) ) 
   echo 'dit geeft een dikke parse-error';
?>