Hallo allen,

Ik heb een class gemaakt die automatisch classes kan inladen wanneer ze nodig zijn..

Hij haaldt ze uit de huidige directory of uit een vooropgestelde directory (denk aan shared lib's)

Ook is er support voor namespaces..

http://phphulp.pastebin.com/f7030a208

Zeg maar wat je er van vindt..
Wat voor review verwacht je?

Maar wat ik er van vind: overbodig. __autoload + str_replace + set_include_path voldoen bij mij prima. Ik maak meestal even snel een autoload-functie speciaal voor een project, zodat ik alle uitzonderingen (classes die in vreemd-vernoemde bestanden staan, interfaces die in andere bestanden staan, etc.) er gemakkelijk in kan programmeren.

Ik zie dat je __DIR__ gebruikt, dus de werking van je autoloader is afhankelijk van de plaats het bestandje waar de definitie in staat?

Je mixt static en niet static methods met elkaar. Waarom deze verdeling, en waarom niet volledig static of volledig niet-static + singleton?
Ok, ivm met static en niet static heb je wel gelijk. Het kan evengoed werken als alles static is.

Die class zal in de "hoofdmap" van het procject staan (nee niet de public_html) dus DIR lijkt me de juiste manier dan?

Overbodig? Het is gewoon een iets uitgebreidere versie van __autoload lijkt me. Weet niet wat daar zo overbodig zou zijn? Of doe jij zelf handmatig telkens de class def. includen?
Ik zet zelf meestal m'n classes die ik kan hergebruiken ergens in één mapje op de server, en dat mapje zet ik dan in m'n include_path. Het pad naar die class is niet vanzelf gelijk als het pad naar de andere classes, vandaar dat ik dacht dat __DIR__ (pas sinds PHP 5.3 toch?) niet helemaal logisch was.

Ik maak m'n autoload functie meestal op maat. En omdat ik hem niet hergebruik hoef ik ook niet ingewikkeld te doen met variabelen en paden toevoegen via methods. Heerlijk niet-uitgebreid. Vandaar is hij voor mij overbodig :)

Reageren