echo $begrüßung;
Ich wollte nur darauf hinweisen, daß es nur unnötig und verwirrend ist, einen bekennenden Newbie mit dem Unterschied zwischen && und and zu konfrontieren. Vielleicht braucht man das ja als Zend Certified Engineer, für den Originalposter ist es sicher nutzloses Wissen...
Mitnichten, denn der Unterschied kann sich bei seinem Folgeproblem auswirken, zu dem er zum einen wissen muss, dass es so etwas wie Operator-Präzedenz gibt und welche Auswirkungen das hat, und zum anderen, dass er && und and respektive || und or nicht immer als gleichwertige Alternativschreibweise verwenden kann.
if ($zeit > 140000 and $tag=='Sat' || $tag=='Sun')
ergibt ein anderes Ergebnis als
if ($zeit > 140000 and $tag=='Sat' or $tag=='Sun')
zumindest bei bestimmte Konstellationen der Ausgangswerte.
var_dump(false and false || true); // false
var_dump(false and false or true); // true
Es ist auf alle Fälle empfehlenswert, unabhängig von der Operator-Rangfolge durch Klammern die Reihenfolge zu bestimmen. Dadurch kann man auch dem Quelltext direkt die Intention des Autors entnehmen, auch wenn man sich mit den Feinheiten der Operatoren nicht genau auskennt.
if ($zeit > 140000 and ($tag=='Sat' or $tag=='Sun'))
@Schwake:
Zudem wäre es für Quelltextleser interessant, die Bedeutung der 140000 zu erfahren. Das könnte man in einem Kommentar notieren. Außerdem erwartet die Funktion time() keine Parameter.
echo "$verabschiedung $name";