MB: Klassen Konstanten zu laufzeit definieren?

Beitrag lesen

moin dedlfix,

Soll $root aber unbedingt gegen Schreibzugriffe geschützt sein, dann lass es private und erstell eine public static Zugriffsfunktion, die den Wert ausliest und zurückgibt.

Sprichst du über Properties wie Constanten oder Methoden? Wenn du über Properties redest dann gib mir n Beispiel damit ich das nachvollziehen kann.

Und dann? Woher weiß der Code nun, welche Konstanten definiert sind?

Wenn die Klasse die Pfad Konstanten definiert hat, kann ich die Konstanten zu Laufzeit in einem Pfad-Array speichern, sodass es der Autoload-Klasse zur Verfügung gestellt wird. Soweit bin ich aber noch nicht gegangen. Erst mal nachfragen. Ich kann get_defined_constants() verwenden, was aber dann alle konstanten betrifft auch die, die nich für Pfade stehen.

Was sind das eigentlich für Pfade, die es da zur Laufzeit zu finden gilt?

Na Verzeichnisspfade zu den einzelne PHP's (z.B. PATH_APP_CONTROLLERS oder PHP_SYSTEM_CORE). So muss der Autoloader nicht ständig Pfade ändern und dann prüfen (z.B. $controller = ROOT .DS .APP .CONTROLLER .DS . $controller .'.php';) sonder einfach über eine foreach()-Schleife laufen bis er die sache findet oder nicht mit

Composer ist kein Pfadverwaltung sondern eine Paketverwaltung, um Pakete von anderen in seiner Software zu verwenden.

Ok ich habe mich nicht mit composer beschäftigt Danke dir für die Info.

vlg