Waarom voeg je een map naar setSession toe die dan SessionManager:SMILEYYYYYYYYYYYBEGIN:set aanroept?
Dat hoeft helemaal niet, je roept het object direct aan, geen nutteloze tussenwegen:
En je hebt helemaal geen waslijst van includes als je een autoloader gebruikt.
toevoeging op 11 december 2014, 16:34:01:
Zoek op: Composer autoloader.
Je hebt meestal wel een bootstrap bestand ja, die dan die sessionManager registreert als service in je DI container.
Maar dat wordt (vaak) nog een stapje abstracter gemaakt door een klasse te maken die een andere klasse registreert, zoiets heet een service provider, het provide een service aan de DI container.
een service is een class die je registreert in je DI container
Maar ik herhaal: je moet al je classes autoloaden. Dan hoef je geen includes meer te gebruiken. Tegenwoordig doet men dat in php dmv namespaces.
En je moet bovendien, als je in een closure zit variables buiten de scope usen, daarom kreeg je ook een foutmelding. Maar je deed het ook verkeerd, zie dus ^.
Dus:
Dat hoeft helemaal niet, je roept het object direct aan, geen nutteloze tussenwegen:
[COLOR= #0000BB]<?php
$container[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]sessionManager[/COLOR][COLOR= #007700]]->[/COLOR]set[COLOR= #007700]([/COLOR][COLOR= #DD0000]name[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]Jesse[/COLOR][COLOR= #007700]);[/COLOR]
?> En je hebt helemaal geen waslijst van includes als je een autoloader gebruikt.
toevoeging op 11 december 2014, 16:34:01:
Zoek op: Composer autoloader.
Je hebt meestal wel een bootstrap bestand ja, die dan die sessionManager registreert als service in je DI container.
Maar dat wordt (vaak) nog een stapje abstracter gemaakt door een klasse te maken die een andere klasse registreert, zoiets heet een service provider, het provide een service aan de DI container.
een service is een class die je registreert in je DI container
Maar ik herhaal: je moet al je classes autoloaden. Dan hoef je geen includes meer te gebruiken. Tegenwoordig doet men dat in php dmv namespaces.
En je moet bovendien, als je in een closure zit variables buiten de scope usen, daarom kreeg je ook een foutmelding. Maar je deed het ook verkeerd, zie dus ^.
Dus:
[COLOR= #0000BB]<?php
$naam[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]Raoul[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$zegNaam[/COLOR] [COLOR= #007700]= function()[/COLOR] use [COLOR= #007700]([/COLOR][COLOR= #0000BB]$naam[/COLOR][COLOR= #007700]) {[/COLOR]
[URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]Hallo ik ben [/COLOR] [COLOR= #007700].[/COLOR] [COLOR= #0000BB]$naam[/COLOR][COLOR= #007700];
};[/COLOR]
[COLOR= #0000BB]$zegNaam[/COLOR][COLOR= #007700]();[/COLOR] 