Constantin Kiesling: Formalitäten

Hallo liebe Community,

Ich hätte da zwei Fragen:

  1. wenn ich z.B. in einer if-Klausel mit Zahlen herumrechne, muss ich die dann unter Anführungszeichen stellen?

z.B.: Ist es besser zu scheiben [if ($zahl > "0")] oder kann man es auch so tippen [if ($zahl > 0)]

  1. Wenn ich will, dass eine Variable existiert, aber ihr Wert null ist, wie mache ich das am besten? Soll man einfach schreiben [$var = "";] oder gibt es da irgendeine "elegantere" Lösung?

Würde mich sehr über Antworten freuen!

MfG,
Consti

  1. Hallo Constantin,

    1. wenn ich z.B. in einer if-Klausel mit Zahlen herumrechne, muss ich die dann unter Anführungszeichen stellen?

    nein, ohne Anführungszeichen - du willst ja schließlich mit der Zahl 0 vergleichen - nicht mit dem String '0'.

    1. Wenn ich will, dass eine Variable existiert,

    if(isset($var)){ ... //->http://de.php.net/isset

    aber ihr Wert null ist, wie mache ich das am besten?

    empty($var) liefert true wenn $var 0 ist. ->http://de3.php.net/empty

    Soll man einfach schreiben [$var = "";]

    besser nicht, je nach Einstellung von error_reporting (wenn das auf E_ALL o.ä. steht) bekommst du einen Hinweis, wenn $var zu dem Zeitpunkt noch nicht definiert war. btw: $var="" gibt (fast) immer true, da du $var einen Leerstring zuweist, was eigentlich immer gutgeht - ich vermute du hast $var=="" (siehe auch http://de2.php.net/language.operators.comparison) gemeint, oder?

    Grüße aus Nürnberg
    Tobias

    --
    Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
  2. Hi!

    1. wenn ich z.B. in einer if-Klausel mit Zahlen herumrechne, muss ich die dann unter Anführungszeichen stellen?

    nein

    z.B.: Ist es besser zu scheiben [if ($zahl > "0")] oder kann man es auch so tippen [if ($zahl > 0)]

    "0", das ist ein String, das andere ein Integer, kommt drauf an was Du willst. Wenn Du Zahlen vergleichst dann nimm auch Zahlen ;-)

    1. Wenn ich will, dass eine Variable existiert, aber ihr Wert null ist, wie mache ich das am besten? Soll man einfach schreiben [$var = "";] oder gibt es da irgendeine "elegantere" Lösung?

    Kommt drauf an was Du willst. NULL heißt dass die Variable gar keinen Wert hat, auch keinen Typ hat. http://de3.php.net/manual/de/language.types.null.php

    "" heißt dass die Variable vom Typ String ist, dieser aber leer ist
    0 heißt dass die Variable ein Integer ist und den Wert 0 hat.

    http://de3.php.net/manual/de/types.comparisons.php
    http://de3.php.net/manual/de/language.expressions.php
    http://de3.php.net/manual/de/language.types.php (unterkapitel lesen!)
    http://de3.php.net/manual/de/language.types.type-juggling.php

    Grüße
    Andreas