Dynamisch functies aanroepen
Een van de handige dingen in PHP is de mogelijkheid om specifieke identifiers, zoals klasse namen, functies, methodes en ook variabele namen aan te roepen via een variabele. Dit maakt PHP behoorlijk flexibel. PHP heeft meerdere wegen naar Rome, dus functies kun je ook aanroepen met de functies call_user_func() en call_user_func_array().
Deze verschillende methodes hebben uiteraard zo hun eigen verschillen en dus hun eigen performance kenmerken. Matthew Weier O'Phinney en Paul Jones hebben de verschillende methodes tegen elkaar uitgezet en gemeten welke methode nu het handigst (call_user_func_array() werkt iets anders, bijvoorbeeld) maar ook het snelst zijn.
Een derde methode die niet in de artikelen wordt besproken is de mogelijkheid om functies aan te roepen via de Reflection API die sinds PHP 5 beschikbaar is:
Volg Scriptorama via RSS!
Reageer ook!
[...] Callbacks zijn meer dan alleen array_map(), al is dat wel een ontzettend handige functie. Je kunt natuurlijk zelf ook een callback systeem implementeren voor een functie van jezelf. Je levert een stukje performance in maar krijgt daarvoor een enorm stuk flexibiliteit terug. Met de in Dynamische functies aanroepen in PHP beschreven call_user_func_array() functie kun je met enkele regels zelf gemakkelijk een callback-enabled functie maken. Dit zou bijvoorbeeld de PHP-implementatie van array_map() zijn: PLAIN TEXT PHP: [...]
Door Callbacks in PHP | Scriptorama op 07.03.06 @ 11:22 am | Permalink
Zo kan het ook:
Door Riverburn
op 04.30.07 @ 4:11 pm | Permalink
Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>