Opleiding Web Developer 2014-2015 05/11/14 Les 6: func0es Dinsdag 28/10/2014 1 In deze les • Func0es – Func0es aanroepen • Hoe? • Mogelijke resultaten – Zelf func0es definiëren • Hoe? • Argumenten • Variabele scope – Varia & weetjes • Oefeningen – Func0es – Afronden oefeningen les 5 (meertalig en DPI) 1 © Vincent De Munck Opleiding Web Developer 2014-2015 05/11/14 Func0es aanroepen • Func0e = bundel(tje) code à eenvoudig om meerdere keren uit te voeren • Voorbeeld gebruik van een ingebouwde func0e: $waarde= pow(5,3); echo $waarde; • Hoe roep je een func0e aan? – Naam van de func0e: pow – Gevolgd door haakjes () – Argumenten tussen de haakjes, gescheiden door komma's: 5,3 dit is de info die je meegee\ aan de func0e Func0e: resultaat • Wat een func0e doet hangt af van: – De code in de func0e – De argumenten – Context (globale variabelen) • De func0e kan als resultaat een variabele teruggeven (de zgn. "return value") • De func0e kan zelf ook andere effecten hebben, bijvoorbeeld via echo statements, of door aanpassingen te doen in de database – Voorbeeld: phpinfo() à gee\ een grote paarse tabel! 2 © Vincent De Munck Opleiding Web Developer 2014-2015 05/11/14 Zelf func0es definiëren • Voorbeeld van een zelfgedefinieerde func0e: func0on maakFooter() { echo "<hr>© 2013 -‐ Al het bovenstaande is nonsens."; } • Deze func0e kan dan zo aangeroepen worden: maakFooter(); • Als we willen dat de func0e een waarde teruggee\, roepen we eenmalig return aan in de func0e-‐ defini0e (hee\ dezelfde syntaxis als echo). – Bijvoorbeeld bij pow() is de return waarde het resultaat van de berekening. – Na return stopt het uitvoeren van de func0e (!) – Als we meerdere waarden willen returnen à array! Argumenten (1) • De volgorde van de argumenten is essen0eel! • Er kan een default waarde (standaardwaarde) ingesteld worden voor de argumenten. Bvb: func0on hallo($naam="Joske") { echo "Hallo $naam!"; } • Als een argument een default waarde hee\, wordt het op0oneel (!) 3 © Vincent De Munck Opleiding Web Developer 2014-2015 05/11/14 Argumenten (2) Waardes doorgeven • Dit is de meest courante manier • Een voorbeeld: func0on BTW($totaal) { return $totaal * 0.21; } $totaal_incl = $totaal_excl + BTW($totaal_excl); • We geven de waarde van $totaal_excl mee als argument Referen0e doorgeven • Referen0e naar een variabele als argument. • Wijzigingen aan deze variabele in de func0e hebben dus ook gevolgen erbuiten! • Een voorbeeld: func0on BTW(&$totaal) { $totaal *= 1.21; } BTW($totaal); Variable scope • Variabelen in de func0e zijn totaal gescheiden van die erbuiten, behalve – Variabelen die per reference doorgegeven zijn – Global variabelen: we geven in de func0e aan dat we de globale variabele willen gebruiken, ipv een die specifiek is voor de func0e à zie voorbeeld op mgml.be 4 © Vincent De Munck Opleiding Web Developer 2014-2015 05/11/14 Varia & weetjes • Een func0e kan zichzelf aanroepen. Let echter op voor een oneindige lus! • Func0es best definiëren alvorens ze aan te roepen • Bij complexere scripts worden de func0es vaak in een apart bestand gedefinieerd, en dat wordt dan met include() of require() ingevoegd AAN DE SLAG! 5 © Vincent De Munck
© Copyright 2024 ExpyDoc