dedlfix: mehrere Werte einer function zurückgeben

Beitrag lesen

echo $begrüßung;

Funktionier aber jetzt muss ich erst recht überall wo ich die Funktion verwendet hab einen zusätzlichen Wert in die Klammer schreiben.
Ist das der Ansatz
Wenn du das, was eine Funktion macht, signifikant aenderst - insb. auch, welche Werte sie veraendert/zurueckgibt - dann wuerde ich sagen, ja.

Nein, das muss nicht unbedingt. Es gibt ja die Möglichkeit, Parameter wegzulassen und dafür einen Default-Wert anzugeben. Das geht auch für Referenz-Parameter. (Allerdings glaube ich mich zu erinnern, dass das nicht mit allen PHP-Versionen geht.)

function foo($a, &$b = null) {
    $b = ...;
  }

Das kann man nun als foo($x) oder foo($x, $y) aufrufen.

Globale Variablen waeren ein weiterer Weg - ebenfalls ein ggf. riskanter und nicht sonderlich sauberer.

Aus Funktionen heraus globale Werte zu ändern, ist in den meisten Fällen keine gute Idee. Der Zusammenhang zwischen dem Funktionsaufruf und einer "unbeteiligten" Variablen ist auf den ersten Blick nicht erkennbar. Wer diesen Weg geht, sollte ihn zumindest gut dokumentieren.

echo "$verabschiedung $name";