bubble: Variable in Funktionsnamen verwenden?

Beitrag lesen

http://selfhtml.bitworks.de/artikel_datenstrukturen/function_reference.php.txt

<klugscheiß>…_reference ... du benutzt da nicht eine Referenz auf die Funktion.
Sondern Reflexion!</klugscheiß>

Das hat den Vorteil, dass man so polymorph arbeiten kann.
… "OOP durch die Hintertür".

$_page[1]['print'] = 'print_doc_docname_1';
$_page[2]['print'] = 'print_doc_docname_2';
Aufruf:
$_page[1]['print']($attrib = 'quer', $printer = 'lexmark');

IMO wäre hier "richtiges" OOP besser, dann kann man z.B. auch Sachen wie typ hints verwenden und bekommt bessere Fehlermeldungen (im Fehlerfall).

Als Beispiel:
In der Reflexionsvariante. Die String-Variable wird gesetzt, es kommt aber erst beim Aufruf zur Fehlermeldung. Die Fehlersuche wird langwierig sein, je nach dem wo überall die Variable gesetzt werden kann, in der der Name der Funktion steht.

Im Falle von OOP wirst du direkt bei der Erzeugung der nicht vorhandenen Controller-Klasse auf die Schnauze fallen und weißt, dass der Fehler nicht all zu fern sein kann.

MfG
bubble

--
If "god" had intended us to drink beer, he would have given us stomachs. - David Daye