dedlfix: if problem

Beitrag lesen

Hi!

ich möchte gerne folgendes abfragen:
if($_SESSION['user']==0)

Wofür steht die 0? Ist das ein Wert, der vorkommen kann und genauso wie beispielsweise 1, 23 oder 42 einen User repräsentieren kann? Oder willst du wissen, ob es kein User ist, weil nur positive Zahlen ungleich 0 Usern zugeordnet sein können? Wenn die letzte Vermutung zutrifft, dann frag mit empty().

doch wenn überhaupt nichts in der Variable steht, bekomme ich folgenden Meldung
Notice: Undefined index: user
wie kann ich diese den verhindern?

empty() und isset() sind die beiden einzigen Funktionen[*], die keine Notice-Meldungen werfen, wenn sie nicht vorhandene Variablen oder wie in deinem Fall Array-Felder übergeben bekommen. Damit eigenen sie sich für diese Art Tests.

[*] Genaugenommen sind es keine Funktionen sondern Sprachkonstrukte. Deswegen kann PHP anders als bei den anderen Funktionen mit den ihnen übergebenen Parametern umgehen.

Lo!