echo $begrüßung;
aber signaturen sind auch bei interpretern möglich. dies ist kein konzeptionelles problem, sondern eine sache des wollens.
zu signaturen gehören nicht nur datentypen, sondern auch parameteranzahl und positionen. aber das ist ja erst einmal egal.
Lassen wir mal den "Spezialfall" Type Hinting (gibt es seit PHP5) außer Betracht, dann bleibt nur die Möglichkeit übrig, anhand der Anzahl der Parameter verschiedene Methoden auszuwählen. Ansonsten sind weder beim Rückgabewert noch bei den Parametern Typangaben möglich. Es ist noch nicht einmal nötig, für alle beim Aufruf übergebenen Argumente einen Parameter in der Funktionsdefinition zu notieren.
function foo() { ... }
Man kann nun foo(), foo($arg), foo($arg1, $arg2) usw. aufrufen. (An die übergebenen Argumente gelangt man mit func_get_arg()/func_get_args().)
Ebenso kann man foo beispielsweise mit n Parameter deklarieren
function foo($param1, ..., $paramn) { ... }
und mit n + x Argumenten aufrufen:
foo($arg1, ..., $argn)
foo($arg1, ..., $argn, $argx1, ... $argxn)
Wenn man nun foo($arg1, ..., $argn) aufrufen möchte, wie soll PHP nun entscheiden, ob es die erste Deklaration (foo()) aufrufen soll oder doch die zweite (foo($param1, ..., $paramn))? Gut, man könnte festlegen, dass zuerst die Methode mit der passenden Parameteranzahl und dann die mit der nächstniedrigeren Parameteranzahl herangezogen wird. Aber warum sollte man solch eine Komplexität in dieses Thema bringen, wo es doch ausreichend ist, eine einzige Methode zu definieren und eine variable Anzahl Argumente zu übergeben?
Man sollte bei solchen Diskussionen immernoch bedenken, dass PHP als "Personal Home Page Tools" entworfen wurde und dass dies der Haupteinsatzzweck ist. Wenn man signaturabhängige Methodenaufrufe benötigt sollte man zu einem Werkzeug greifen, dass dieses Feature bietet.
echo "$verabschiedung $name";